Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"make clean" doesn't clean a lot of generated files #23449

Closed
andrewboie opened this issue Mar 13, 2020 · 8 comments · Fixed by #32140
Closed

"make clean" doesn't clean a lot of generated files #23449

andrewboie opened this issue Mar 13, 2020 · 8 comments · Fixed by #32140
Assignees
Labels
area: Build System bug The issue is a bug, or the PR is fixing a bug priority: low Low impact/importance bug

Comments

@andrewboie
Copy link
Contributor

Steps to reproduce:

cd tests/kernel/mem_protect/userspace
mkdir out
cd out
cmake -DBOARD=qemu_x86 ..
make -j20
make clean
find zephyr

I would not expect to see generated files still remaining, for example:

zephyr/zephyr.map
zephyr/app_smem_unaligned_prebuilt.map
zephyr/include
zephyr/include/generated
zephyr/include/generated/snippets-rom-start.ld
zephyr/include/generated/devicetree_unfixed.h
zephyr/include/generated/uart_ns16550_port_1.h
zephyr/include/generated/version.h
zephyr/include/generated/app_smem.ld
zephyr/include/generated/snippets-rodata.ld
zephyr/include/generated/snippets-noinit.ld
zephyr/include/generated/uart_ns16550_port_0.h
zephyr/include/generated/syscalls
zephyr/include/generated/syscalls/pwm.h
zephyr/include/generated/syscalls/zsock_getsockopt_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv6_addr_lookup_by_index_mrsh.c
zephyr/include/generated/syscalls/i2c_configure_mrsh.c
zephyr/include/generated/syscalls/espi_write_flash_mrsh.c
zephyr/include/generated/syscalls/gpio_get_pending_int_mrsh.c
zephyr/include/generated/syscalls/k_sem_take_mrsh.c
zephyr/include/generated/syscalls/zsock_shutdown_mrsh.c
zephyr/include/generated/syscalls/adc.h
zephyr/include/generated/syscalls/espi_config_mrsh.c
zephyr/include/generated/syscalls/counter_set_top_value_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv6_addr_add_by_index_mrsh.c
zephyr/include/generated/syscalls/net_eth_get_ptp_clock_by_index_mrsh.c
zephyr/include/generated/syscalls/k_timer_start_mrsh.c
zephyr/include/generated/syscalls/k_sem_reset_mrsh.c
zephyr/include/generated/syscalls/zsock_sendto_mrsh.c
zephyr/include/generated/syscalls/z_log_string_from_user_mrsh.c
zephyr/include/generated/syscalls/k_float_disable_mrsh.c
zephyr/include/generated/syscalls/k_msgq_put_mrsh.c
zephyr/include/generated/syscalls/zsock_getsockname_mrsh.c
zephyr/include/generated/syscalls/log_ctrl.h
zephyr/include/generated/syscalls/sensor_channel_get_mrsh.c
zephyr/include/generated/syscalls/k_uptime_get_mrsh.c
zephyr/include/generated/syscalls/hwinfo.h
zephyr/include/generated/syscalls/hwinfo_get_device_id_mrsh.c
zephyr/include/generated/syscalls/k_msgq_peek_mrsh.c
zephyr/include/generated/syscalls/missing_syscall_mrsh.c
zephyr/include/generated/syscalls/uart_poll_out_mrsh.c
zephyr/include/generated/syscalls/mutex.h
zephyr/include/generated/syscalls/k_pipe_alloc_init_mrsh.c
zephyr/include/generated/syscalls/atomic_set_mrsh.c
zephyr/include/generated/syscalls/gpio_enable_callback_mrsh.c
zephyr/include/generated/syscalls/k_msgq_get_attrs_mrsh.c
zephyr/include/generated/syscalls/uart_err_check_mrsh.c
zephyr/include/generated/syscalls/uart_drv_cmd_mrsh.c
zephyr/include/generated/syscalls/k_object_release_mrsh.c
zephyr/include/generated/syscalls/gpio_port_set_masked_raw_mrsh.c
zephyr/include/generated/syscalls/sensor_sample_fetch_chan_mrsh.c
zephyr/include/generated/syscalls/k_poll_signal_reset_mrsh.c
zephyr/include/generated/syscalls/k_thread_priority_set_mrsh.c
zephyr/include/generated/syscalls/flash_get_page_info_by_offs_mrsh.c
zephyr/include/generated/syscalls/atomic_add_mrsh.c
zephyr/include/generated/syscalls/k_object_alloc_mrsh.c
zephyr/include/generated/syscalls/k_busy_wait_mrsh.c
zephyr/include/generated/syscalls/gpio.h
zephyr/include/generated/syscalls/ipm_max_data_size_get_mrsh.c
zephyr/include/generated/syscalls/uart_irq_is_pending_mrsh.c
zephyr/include/generated/syscalls/can_detach_mrsh.c
zephyr/include/generated/syscalls/zsock_accept_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv4_set_gw_by_index_mrsh.c
zephyr/include/generated/syscalls/espi_send_vwire_mrsh.c
zephyr/include/generated/syscalls/uart.h
zephyr/include/generated/syscalls/k_queue_is_empty_mrsh.c
zephyr/include/generated/syscalls/k_thread_create_mrsh.c
zephyr/include/generated/syscalls/z_zephyr_read_stdin_mrsh.c
zephyr/include/generated/syscalls/uart_irq_err_disable_mrsh.c
zephyr/include/generated/syscalls/k_timer_user_data_get_mrsh.c
zephyr/include/generated/syscalls/i2c.h
zephyr/include/generated/syscalls/k_msgq_num_free_get_mrsh.c
zephyr/include/generated/syscalls/flash_read_mrsh.c
zephyr/include/generated/syscalls/k_thread_priority_get_mrsh.c
zephyr/include/generated/syscalls/kscan.h
zephyr/include/generated/syscalls/counter_stop_mrsh.c
zephyr/include/generated/syscalls/z_log_hexdump_from_user_mrsh.c
zephyr/include/generated/syscalls/z_test_1cpu_start_mrsh.c
zephyr/include/generated/syscalls/atomic_xor_mrsh.c
zephyr/include/generated/syscalls/uart_line_ctrl_get_mrsh.c
zephyr/include/generated/syscalls/z_test_1cpu_stop_mrsh.c
zephyr/include/generated/syscalls/atomic_and_mrsh.c
zephyr/include/generated/syscalls/i2s_configure_mrsh.c
zephyr/include/generated/syscalls/uart_irq_tx_enable_mrsh.c
zephyr/include/generated/syscalls/zsock_listen_mrsh.c
zephyr/include/generated/syscalls/can_configure_mrsh.c
zephyr/include/generated/syscalls/log_panic_mrsh.c
zephyr/include/generated/syscalls/zephyr_fputc_mrsh.c
zephyr/include/generated/syscalls/k_thread_custom_data_get_mrsh.c
zephyr/include/generated/syscalls/ps2.h
zephyr/include/generated/syscalls/k_queue_peek_tail_mrsh.c
zephyr/include/generated/syscalls/k_stack_push_mrsh.c
zephyr/include/generated/syscalls/atomic.h
zephyr/include/generated/syscalls/k_queue_alloc_prepend_mrsh.c
zephyr/include/generated/syscalls/socket.h
zephyr/include/generated/syscalls/net_addr_ntop_mrsh.c
zephyr/include/generated/syscalls/entropy_get_entropy_mrsh.c
zephyr/include/generated/syscalls/zsock_fcntl_mrsh.c
zephyr/include/generated/syscalls/errno_private.h
zephyr/include/generated/syscalls/can_send_mrsh.c
zephyr/include/generated/syscalls/led_off_mrsh.c
zephyr/include/generated/syscalls/can.h
zephyr/include/generated/syscalls/zsock_close_mrsh.c
zephyr/include/generated/syscalls/k_thread_join_mrsh.c
zephyr/include/generated/syscalls/z_clock_hw_cycles_per_sec_runtime_get_mrsh.c
zephyr/include/generated/syscalls/counter_get_top_value_mrsh.c
zephyr/include/generated/syscalls/k_is_preempt_thread_mrsh.c
zephyr/include/generated/syscalls/z_sys_mutex_kernel_unlock_mrsh.c
zephyr/include/generated/syscalls/sensor_attr_set_mrsh.c
zephyr/include/generated/syscalls/espi_read_request_mrsh.c
zephyr/include/generated/syscalls/k_thread_custom_data_set_mrsh.c
zephyr/include/generated/syscalls/zephyr_fwrite_mrsh.c
zephyr/include/generated/syscalls/adc_read_mrsh.c
zephyr/include/generated/syscalls/k_thread_suspend_mrsh.c
zephyr/include/generated/syscalls/espi_get_channel_status_mrsh.c
zephyr/include/generated/syscalls/ps2_config_mrsh.c
zephyr/include/generated/syscalls/net_addr_pton_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv4_set_netmask_by_index_mrsh.c
zephyr/include/generated/syscalls/k_queue_get_mrsh.c
zephyr/include/generated/syscalls/uart_irq_tx_disable_mrsh.c
zephyr/include/generated/syscalls/z_sys_mutex_kernel_lock_mrsh.c
zephyr/include/generated/syscalls/atomic_or_mrsh.c
zephyr/include/generated/syscalls/pwm_pin_set_cycles_mrsh.c
zephyr/include/generated/syscalls/dma_start_mrsh.c
zephyr/include/generated/syscalls/z_errno_mrsh.c
zephyr/include/generated/syscalls/adc_read_async_mrsh.c
zephyr/include/generated/syscalls/espi_receive_vwire_mrsh.c
zephyr/include/generated/syscalls/k_usleep_mrsh.c
zephyr/include/generated/syscalls/led.h
zephyr/include/generated/syscalls/k_poll_signal_init_mrsh.c
zephyr/include/generated/syscalls/espi_write_lpc_request_mrsh.c
zephyr/include/generated/syscalls/flash_erase_mrsh.c
zephyr/include/generated/syscalls/flash_write_protection_set_mrsh.c
zephyr/include/generated/syscalls/uart_rx_enable_mrsh.c
zephyr/include/generated/syscalls/k_thread_name_copy_mrsh.c
zephyr/include/generated/syscalls/gpio_disable_callback_mrsh.c
zephyr/include/generated/syscalls/z_zsock_getaddrinfo_internal_mrsh.c
zephyr/include/generated/syscalls/counter_us_to_ticks_mrsh.c
zephyr/include/generated/syscalls/uart_configure_mrsh.c
zephyr/include/generated/syscalls/k_stack_alloc_init_mrsh.c
zephyr/include/generated/syscalls/kscan_config_mrsh.c
zephyr/include/generated/syscalls/k_thread_start_mrsh.c
zephyr/include/generated/syscalls/uart_config_get_mrsh.c
zephyr/include/generated/syscalls/ps2_enable_callback_mrsh.c
zephyr/include/generated/syscalls/k_futex_wake_mrsh.c
zephyr/include/generated/syscalls/k_msgq_alloc_init_mrsh.c
zephyr/include/generated/syscalls/counter_is_counting_up_mrsh.c
zephyr/include/generated/syscalls/kscan_disable_callback_mrsh.c
zephyr/include/generated/syscalls/k_poll_signal_check_mrsh.c
zephyr/include/generated/syscalls/flash_get_page_count_mrsh.c
zephyr/include/generated/syscalls/k_mutex_lock_mrsh.c
zephyr/include/generated/syscalls/ztest_test.h
zephyr/include/generated/syscalls/counter_get_guard_period_mrsh.c
zephyr/include/generated/syscalls/wdt_disable_mrsh.c
zephyr/include/generated/syscalls/peci_config_mrsh.c
zephyr/include/generated/syscalls/wdt_setup_mrsh.c
zephyr/include/generated/syscalls/counter_get_max_relative_alarm_mrsh.c
zephyr/include/generated/syscalls/can_get_state_mrsh.c
zephyr/include/generated/syscalls/ethernet.h
zephyr/include/generated/syscalls/counter_get_num_of_channels_mrsh.c
zephyr/include/generated/syscalls/k_thread_name_set_mrsh.c
zephyr/include/generated/syscalls/ipm_send_mrsh.c
zephyr/include/generated/syscalls/entropy.h
zephyr/include/generated/syscalls/i2s.h
zephyr/include/generated/syscalls/i2s_buf_write_mrsh.c
zephyr/include/generated/syscalls/zsock_socket_mrsh.c
zephyr/include/generated/syscalls/k_sem_init_mrsh.c
zephyr/include/generated/syscalls/atomic_ptr_cas_mrsh.c
zephyr/include/generated/syscalls/peci_transfer_mrsh.c
zephyr/include/generated/syscalls/k_queue_alloc_append_mrsh.c
zephyr/include/generated/syscalls/k_timer_user_data_set_mrsh.c
zephyr/include/generated/syscalls/stack_info_get_mrsh.c
zephyr/include/generated/syscalls/ps2_write_mrsh.c
zephyr/include/generated/syscalls/k_sem_count_get_mrsh.c
zephyr/include/generated/syscalls/sensor.h
zephyr/include/generated/syscalls/atomic_cas_mrsh.c
zephyr/include/generated/syscalls/uart_irq_rx_enable_mrsh.c
zephyr/include/generated/syscalls/counter_set_guard_period_mrsh.c
zephyr/include/generated/syscalls/k_thread_resume_mrsh.c
zephyr/include/generated/syscalls/atomic_ptr_set_mrsh.c
zephyr/include/generated/syscalls/time_units.h
zephyr/include/generated/syscalls/gpio_port_clear_bits_raw_mrsh.c
zephyr/include/generated/syscalls/k_thread_deadline_set_mrsh.c
zephyr/include/generated/syscalls/k_object_access_grant_mrsh.c
zephyr/include/generated/syscalls/k_mutex_init_mrsh.c
zephyr/include/generated/syscalls/uart_irq_rx_disable_mrsh.c
zephyr/include/generated/syscalls/dma.h
zephyr/include/generated/syscalls/k_sleep_mrsh.c
zephyr/include/generated/syscalls/counter_get_frequency_mrsh.c
zephyr/include/generated/syscalls/sensor_sample_fetch_mrsh.c
zephyr/include/generated/syscalls/device.h
zephyr/include/generated/syscalls/net_if_ipv4_addr_lookup_by_index_mrsh.c
zephyr/include/generated/syscalls/ipm_max_id_val_get_mrsh.c
zephyr/include/generated/syscalls/k_poll_signal_raise_mrsh.c
zephyr/include/generated/syscalls/gpio_port_get_raw_mrsh.c
zephyr/include/generated/syscalls/flash_write_mrsh.c
zephyr/include/generated/syscalls/k_timer_status_get_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv6_addr_rm_by_index_mrsh.c
zephyr/include/generated/syscalls/zsock_gethostname_mrsh.c
zephyr/include/generated/syscalls/log_buffered_cnt_mrsh.c
zephyr/include/generated/syscalls/spi_release_mrsh.c
zephyr/include/generated/syscalls/check_perms_mrsh.c
zephyr/include/generated/syscalls/zsock_poll_mrsh.c
zephyr/include/generated/syscalls/ps2_read_mrsh.c
zephyr/include/generated/syscalls/gpio_pin_interrupt_configure_mrsh.c
zephyr/include/generated/syscalls/counter_start_mrsh.c
zephyr/include/generated/syscalls/k_pipe_get_mrsh.c
zephyr/include/generated/syscalls/k_pipe_put_mrsh.c
zephyr/include/generated/syscalls/k_timer_stop_mrsh.c
zephyr/include/generated/syscalls/espi_read_lpc_request_mrsh.c
zephyr/include/generated/syscalls/uart_tx_mrsh.c
zephyr/include/generated/syscalls/can_attach_msgq_mrsh.c
zephyr/include/generated/syscalls/ptp_clock_get_mrsh.c
zephyr/include/generated/syscalls/led_blink_mrsh.c
zephyr/include/generated/syscalls/led_set_brightness_mrsh.c
zephyr/include/generated/syscalls/k_msgq_purge_mrsh.c
zephyr/include/generated/syscalls/spi.h
zephyr/include/generated/syscalls/k_thread_stack_space_get_mrsh.c
zephyr/include/generated/syscalls/uart_irq_err_enable_mrsh.c
zephyr/include/generated/syscalls/device_get_binding_mrsh.c
zephyr/include/generated/syscalls/i2c_slave_driver_register_mrsh.c
zephyr/include/generated/syscalls/k_queue_cancel_wait_mrsh.c
zephyr/include/generated/syscalls/watchdog.h
zephyr/include/generated/syscalls/espi_read_flash_mrsh.c
zephyr/include/generated/syscalls/zsock_inet_pton_mrsh.c
zephyr/include/generated/syscalls/atomic_sub_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv4_addr_rm_by_index_mrsh.c
zephyr/include/generated/syscalls/uart_rx_disable_mrsh.c
zephyr/include/generated/syscalls/flash_get_page_info_by_idx_mrsh.c
zephyr/include/generated/syscalls/zsock_recvfrom_mrsh.c
zephyr/include/generated/syscalls/zsock_setsockopt_mrsh.c
zephyr/include/generated/syscalls/counter_ticks_to_us_mrsh.c
zephyr/include/generated/syscalls/espi.h
zephyr/include/generated/syscalls/k_current_get_mrsh.c
zephyr/include/generated/syscalls/flash.h
zephyr/include/generated/syscalls/adc_channel_setup_mrsh.c
zephyr/include/generated/syscalls/k_msgq_get_mrsh.c
zephyr/include/generated/syscalls/zsock_bind_mrsh.c
zephyr/include/generated/syscalls/led_on_mrsh.c
zephyr/include/generated/syscalls/counter_cancel_channel_alarm_mrsh.c
zephyr/include/generated/syscalls/wdt_feed_mrsh.c
zephyr/include/generated/syscalls/log_process_mrsh.c
zephyr/include/generated/syscalls/k_sem_give_mrsh.c
zephyr/include/generated/syscalls/k_mutex_unlock_mrsh.c
zephyr/include/generated/syscalls/log_filter_set_mrsh.c
zephyr/include/generated/syscalls/k_msgq_num_used_get_mrsh.c
zephyr/include/generated/syscalls/pwm_get_cycles_per_sec_mrsh.c
zephyr/include/generated/syscalls/atomic_nand_mrsh.c
zephyr/include/generated/syscalls/peci_enable_mrsh.c
zephyr/include/generated/syscalls/espi_send_oob_mrsh.c
zephyr/include/generated/syscalls/counter.h
zephyr/include/generated/syscalls/ps2_disable_callback_mrsh.c
zephyr/include/generated/syscalls/eeprom_read_mrsh.c
zephyr/include/generated/syscalls/peci.h
zephyr/include/generated/syscalls/k_str_out_mrsh.c
zephyr/include/generated/syscalls/kscan_enable_callback_mrsh.c
zephyr/include/generated/syscalls/i2c_transfer_mrsh.c
zephyr/include/generated/syscalls/net_if_ipv4_addr_add_by_index_mrsh.c
zephyr/include/generated/syscalls/i2s_trigger_mrsh.c
zephyr/include/generated/syscalls/check_syscall_context_mrsh.c
zephyr/include/generated/syscalls/eeprom_get_size_mrsh.c
zephyr/include/generated/syscalls/gpio_config_mrsh.c
zephyr/include/generated/syscalls/net_ip.h
zephyr/include/generated/syscalls/ipm.h
zephyr/include/generated/syscalls/ipm_set_enabled_mrsh.c
zephyr/include/generated/syscalls/espi_receive_oob_mrsh.c
zephyr/include/generated/syscalls/k_yield_mrsh.c
zephyr/include/generated/syscalls/counter_get_max_top_value_mrsh.c
zephyr/include/generated/syscalls/counter_set_channel_alarm_mrsh.c
zephyr/include/generated/syscalls/k_queue_peek_head_mrsh.c
zephyr/include/generated/syscalls/eeprom_write_mrsh.c
zephyr/include/generated/syscalls/flash_get_write_block_size_mrsh.c
zephyr/include/generated/syscalls/log_core.h
zephyr/include/generated/syscalls/dma_stop_mrsh.c
zephyr/include/generated/syscalls/uart_line_ctrl_set_mrsh.c
zephyr/include/generated/syscalls/counter_get_pending_int_mrsh.c
zephyr/include/generated/syscalls/eeprom.h
zephyr/include/generated/syscalls/zsock_sendmsg_mrsh.c
zephyr/include/generated/syscalls/ptp_clock.h
zephyr/include/generated/syscalls/k_timer_remaining_get_mrsh.c
zephyr/include/generated/syscalls/gpio_port_set_bits_raw_mrsh.c
zephyr/include/generated/syscalls/kernel.h
zephyr/include/generated/syscalls/k_queue_init_mrsh.c
zephyr/include/generated/syscalls/espi_write_request_mrsh.c
zephyr/include/generated/syscalls/net_if.h
zephyr/include/generated/syscalls/spi_transceive_mrsh.c
zephyr/include/generated/syscalls/uart_irq_update_mrsh.c
zephyr/include/generated/syscalls/gpio_port_toggle_bits_mrsh.c
zephyr/include/generated/syscalls/k_stack_pop_mrsh.c
zephyr/include/generated/syscalls/can_recover_mrsh.c
zephyr/include/generated/syscalls/counter_get_value_mrsh.c
zephyr/include/generated/syscalls/k_thread_abort_mrsh.c
zephyr/include/generated/syscalls/z_zephyr_write_stdout_mrsh.c
zephyr/include/generated/syscalls/peci_disable_mrsh.c
zephyr/include/generated/syscalls/k_timer_status_sync_mrsh.c
zephyr/include/generated/syscalls/k_poll_mrsh.c
zephyr/include/generated/syscalls/espi_flash_erase_mrsh.c
zephyr/include/generated/syscalls/test_syscall.h
zephyr/include/generated/syscalls/i2s_buf_read_mrsh.c
zephyr/include/generated/syscalls/libc-hooks.h
zephyr/include/generated/syscalls/k_wakeup_mrsh.c
zephyr/include/generated/syscalls/k_futex_wait_mrsh.c
zephyr/include/generated/syscalls/zsock_connect_mrsh.c
zephyr/include/generated/syscalls/uart_tx_abort_mrsh.c
zephyr/include/generated/syscalls/uart_poll_in_mrsh.c
zephyr/include/generated/syscalls/i2c_slave_driver_unregister_mrsh.c
zephyr/include/generated/devicetree.conf
zephyr/include/generated/app_data_alignment.ld
zephyr/include/generated/snippets-rwdata.ld
zephyr/include/generated/devicetree_fixups.h
zephyr/include/generated/autoconf.h
zephyr/include/generated/snippets-sections.ld
zephyr/include/generated/otype-to-size.h
zephyr/include/generated/snippets-ram-sections.ld

Found when debugging #23429 which makes the problem worse for reasons not yet clear to me.

@andrewboie andrewboie added the bug The issue is a bug, or the PR is fixing a bug label Mar 13, 2020
@andrewboie andrewboie added the priority: low Low impact/importance bug label Mar 13, 2020
@SebastianBoe
Copy link
Collaborator

This is probably due to us not using BYPRODUCTS when we should.

If a script generates a file, and we don't tell CMake about it, then CMake won't know that it should delete it.

Until all cases are fixed, users can consider using "make pristine", but note that this deletes the Makefile as well, which is not always desired.

@github-actions
Copy link

github-actions bot commented Jul 9, 2020

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.

@github-actions github-actions bot added the Stale label Jul 9, 2020
@tejlmand tejlmand removed the Stale label Jul 9, 2020
@github-actions
Copy link

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.

@github-actions github-actions bot added the Stale label Sep 19, 2020
@nashif nashif removed the Stale label Sep 19, 2020
@github-actions
Copy link

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.

@github-actions github-actions bot added the Stale label Nov 19, 2020
@tejlmand tejlmand removed the Stale label Nov 19, 2020
@github-actions
Copy link

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.

@github-actions github-actions bot added the Stale label Jan 19, 2021
@tejlmand tejlmand removed the Stale label Jan 19, 2021
@carlescufi
Copy link
Member

@tejlmand do you think this is worth pursuing? Maybe documenting the limitations might be another option.

@tejlmand
Copy link
Collaborator

tejlmand commented Feb 9, 2021

@tejlmand do you think this is worth pursuing? Maybe documenting the limitations might be another option.

Yes. It is always worth to ensure that byproducts (and dependencies) are set up correctly everywhere in the build syste.

I have briefly looked into this, and the most tricky part is the autogenerated files where we don't know which files are being generated by the scripts, and hence hard to cleanup using byproducts, but from CMake 3.15 there is a new flag that can be used for directories that hold such generated files.
(There is also Makefile support for CMake <3.15, but as we generally recommend Ninja, I haven't looked more into this)

The biggest part of this is going manually through the code to find all occurrences, so trade off between effort and gain means this has been low on prioritization list with regards to severity.

tejlmand added a commit to tejlmand/zephyr that referenced this issue Feb 9, 2021
Fixes: zephyrproject-rtos#23449

This commit adds additional OUTPUT and BYPRODUCTS to custom command
and targets in the Zephyr build system.

This ensures that files produced during the build will be removed again
when invoking ninja clean / make clean.

The generated syscalls headers include folder is added to the syscall
target using ADDITIONAL_CLEAN_FILES property.
However, this property is new in CMake 3.15, so will not work when using
older CMake with ninja.

For CMake versions <=3.15 the ADDITIONAL_MAKE_CLEAN_FILES property is
used. However, this only supports Makefile generator.

Signed-off-by: Torsten Rasmussen <[email protected]>
@tejlmand
Copy link
Collaborator

tejlmand commented Feb 9, 2021

@carlescufi made a first round here: #32140

nashif pushed a commit that referenced this issue Feb 14, 2021
Fixes: #23449

This commit adds additional OUTPUT and BYPRODUCTS to custom command
and targets in the Zephyr build system.

This ensures that files produced during the build will be removed again
when invoking ninja clean / make clean.

The generated syscalls headers include folder is added to the syscall
target using ADDITIONAL_CLEAN_FILES property.
However, this property is new in CMake 3.15, so will not work when using
older CMake with ninja.

For CMake versions <=3.15 the ADDITIONAL_MAKE_CLEAN_FILES property is
used. However, this only supports Makefile generator.

Signed-off-by: Torsten Rasmussen <[email protected]>
github-actions bot pushed a commit that referenced this issue Feb 14, 2021
Fixes: #23449

This commit adds additional OUTPUT and BYPRODUCTS to custom command
and targets in the Zephyr build system.

This ensures that files produced during the build will be removed again
when invoking ninja clean / make clean.

The generated syscalls headers include folder is added to the syscall
target using ADDITIONAL_CLEAN_FILES property.
However, this property is new in CMake 3.15, so will not work when using
older CMake with ninja.

For CMake versions <=3.15 the ADDITIONAL_MAKE_CLEAN_FILES property is
used. However, this only supports Makefile generator.

Signed-off-by: Torsten Rasmussen <[email protected]>
nashif pushed a commit that referenced this issue Feb 19, 2021
Fixes: #23449

This commit adds additional OUTPUT and BYPRODUCTS to custom command
and targets in the Zephyr build system.

This ensures that files produced during the build will be removed again
when invoking ninja clean / make clean.

The generated syscalls headers include folder is added to the syscall
target using ADDITIONAL_CLEAN_FILES property.
However, this property is new in CMake 3.15, so will not work when using
older CMake with ninja.

For CMake versions <=3.15 the ADDITIONAL_MAKE_CLEAN_FILES property is
used. However, this only supports Makefile generator.

Signed-off-by: Torsten Rasmussen <[email protected]>
tejlmand added a commit to tejlmand/zephyr that referenced this issue Mar 22, 2021
Fixes: zephyrproject-rtos#33512

The ${ZEPHYR_FINAL_EXECUTABLE}.map file is being renamed at a later
stage.

The renamed, and thus missing file, causes ninja to relink the target
in order to re-create the map file, which then again is renamed.

This is fixed by removing the ${ZEPHYR_FINAL_EXECUTABLE}.map as a
byproduct and only has the byproduct on the renamed file to ensure
proper cleanup, see: zephyrproject-rtos#23449.

Signed-off-by: Torsten Rasmussen <[email protected]>
nashif pushed a commit that referenced this issue Mar 22, 2021
Fixes: #33512

The ${ZEPHYR_FINAL_EXECUTABLE}.map file is being renamed at a later
stage.

The renamed, and thus missing file, causes ninja to relink the target
in order to re-create the map file, which then again is renamed.

This is fixed by removing the ${ZEPHYR_FINAL_EXECUTABLE}.map as a
byproduct and only has the byproduct on the renamed file to ensure
proper cleanup, see: #23449.

Signed-off-by: Torsten Rasmussen <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: Build System bug The issue is a bug, or the PR is fixing a bug priority: low Low impact/importance bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants