Skip to content

Commit f3742a1

Browse files
Merge pull request #739 from eactor/cmake_no_h_files
NO_H_FILES automake behaviour for cmake
2 parents 799ec65 + 33f03d1 commit f3742a1

File tree

1 file changed

+35
-21
lines changed

1 file changed

+35
-21
lines changed

src/CMakeLists.txt

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -298,47 +298,30 @@ set(SYSTEMC_CORE_SRC
298298
sysc/kernel/sc_cmnhdr.h
299299
sysc/kernel/sc_constants.h
300300
sysc/kernel/sc_cor.h
301-
sysc/kernel/sc_cor_fiber.h
302-
sysc/kernel/sc_cor_pthread.h
303-
sysc/kernel/sc_cor_qt.h
304-
sysc/kernel/sc_cthread_process.h
305301
sysc/kernel/sc_dynamic_processes.h
306302
sysc/kernel/sc_event.h
307303
sysc/kernel/sc_except.h
308304
sysc/kernel/sc_externs.h
309305
sysc/kernel/sc_join.h
310306
sysc/kernel/sc_kernel_ids.h
311307
sysc/kernel/sc_macros.h
312-
sysc/kernel/sc_method_process.h
313308
sysc/kernel/sc_module.h
314309
sysc/kernel/sc_module_name.h
315-
sysc/kernel/sc_module_registry.h
316-
sysc/kernel/sc_name_gen.h
317310
sysc/kernel/sc_object.h
318-
sysc/kernel/sc_object_int.h
319-
sysc/kernel/sc_object_manager.h
320-
sysc/kernel/sc_stage_callback_registry.h
321311
sysc/kernel/sc_process.h
322312
sysc/kernel/sc_process_handle.h
323-
sysc/kernel/sc_reset.h
324313
sysc/kernel/sc_runnable.h
325-
sysc/kernel/sc_runnable_int.h
326314
sysc/kernel/sc_sensitive.h
327315
sysc/kernel/sc_simcontext.h
328-
sysc/kernel/sc_simcontext_int.h
329316
sysc/kernel/sc_spawn.h
330317
sysc/kernel/sc_spawn_options.h
331318
sysc/kernel/sc_status.h
332-
sysc/kernel/sc_thread_process.h
333319
sysc/kernel/sc_time.h
334320
sysc/kernel/sc_ver.h
335321
sysc/kernel/sc_wait.h
336322
sysc/kernel/sc_wait_cthread.h
337323
sysc/tracing/sc_trace.h
338-
sysc/tracing/sc_trace_file_base.h
339324
sysc/tracing/sc_tracing_ids.h
340-
sysc/tracing/sc_vcd_trace.h
341-
sysc/tracing/sc_wif_trace.h
342325
sysc/utils/sc_hash.h
343326
sysc/utils/sc_iostream.h
344327
sysc/utils/sc_list.h
@@ -349,7 +332,6 @@ set(SYSTEMC_CORE_SRC
349332
sysc/utils/sc_pvector.h
350333
sysc/utils/sc_report.h
351334
sysc/utils/sc_report_handler.h
352-
sysc/utils/sc_stop_here.h
353335
sysc/utils/sc_string.h
354336
sysc/utils/sc_string_view.h
355337
sysc/utils/sc_temporary.h
@@ -425,6 +407,27 @@ set(SYSTEMC_CORE_SRC
425407
>
426408
)
427409

410+
set(SYSTEMC_CORE_SRC_PRIVATE
411+
sysc/kernel/sc_cor_fiber.h
412+
sysc/kernel/sc_cor_pthread.h
413+
sysc/kernel/sc_cor_qt.h
414+
sysc/kernel/sc_cthread_process.h
415+
sysc/kernel/sc_method_process.h
416+
sysc/kernel/sc_module_registry.h
417+
sysc/kernel/sc_name_gen.h
418+
sysc/kernel/sc_object_int.h
419+
sysc/kernel/sc_object_manager.h
420+
sysc/kernel/sc_stage_callback_registry.h
421+
sysc/kernel/sc_reset.h
422+
sysc/kernel/sc_runnable_int.h
423+
sysc/kernel/sc_simcontext_int.h
424+
sysc/kernel/sc_thread_process.h
425+
sysc/tracing/sc_trace_file_base.h
426+
sysc/tracing/sc_vcd_trace.h
427+
sysc/tracing/sc_wif_trace.h
428+
sysc/utils/sc_stop_here.h
429+
)
430+
428431
set(SYSTEMC_SC_MAIN_SRC
429432
systemc.h
430433
tlm.h
@@ -435,6 +438,12 @@ set(SYSTEMC_SC_MAIN_SRC
435438

436439
if (BUILD_SHARED_LIBS AND (WIN32 OR CYGWIN))
437440

441+
# Build exclusion list
442+
foreach(header IN LISTS SYSTEMC_CORE_SRC_PRIVATE)
443+
list(APPEND SYSTEMC_CORE_SRC_PRIVATE_EXCLUDE PATTERN ${header} EXCLUDE)
444+
endforeach()
445+
446+
438447
# Windows DLLs can't contain unresolved symbols, so we need to spilt library
439448
# into two:
440449
# - ${SYSTEMC_DLL_TARGET}.dll is a shared library without unresolved symbols
@@ -443,7 +452,7 @@ if (BUILD_SHARED_LIBS AND (WIN32 OR CYGWIN))
443452

444453
set(SYSTEMC_DLL_TARGET systemc-${SystemCLanguage_VERSION})
445454

446-
add_systemc_library(${SYSTEMC_DLL_TARGET} SC_BUILD SHARED ${SYSTEMC_CORE_SRC} )
455+
add_systemc_library(${SYSTEMC_DLL_TARGET} SC_BUILD SHARED ${SYSTEMC_CORE_SRC} ${SYSTEMC_CORE_SRC_PRIVATE})
447456

448457
add_systemc_library(systemc SC_BUILD_OFF STATIC ${SYSTEMC_SC_MAIN_SRC} )
449458

@@ -478,6 +487,7 @@ else(BUILD_SHARED_LIBS AND (WIN32 OR CYGWIN))
478487
add_systemc_library(systemc
479488
SC_BUILD
480489
${SYSTEMC_CORE_SRC}
490+
${SYSTEMC_CORE_SRC_PRIVATE}
481491
${SYSTEMC_SC_MAIN_SRC}
482492
)
483493

@@ -509,8 +519,12 @@ install (FILES systemc tlm
509519
install (DIRECTORY ./
510520
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
511521
COMPONENT dev
512-
FILES_MATCHING PATTERN "*.h")
522+
FILES_MATCHING PATTERN "*.h"
523+
# explicitly exclude former NO_H_FILES
524+
${SYSTEMC_CORE_SRC_PRIVATE_EXCLUDE})
513525
install (DIRECTORY ./
514526
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
515527
COMPONENT dev
516-
FILES_MATCHING PATTERN "*.hpp")
528+
FILES_MATCHING PATTERN "*.hpp"
529+
# explicitly exclude former NO_H_FILES
530+
${SYSTEMC_CORE_SRC_PRIVATE_EXCLUDE})

0 commit comments

Comments
 (0)