Annotation of hatari/src/cpu/CMakeLists.txt, revision 1.1.1.3

1.1       root        1: 
                      2: include_directories(. ../.. ../includes ${SDL_INCLUDE_DIR}) 
                      3: 
                      4: # Unfortunately we've got to specify the rules for the generated files twice,
                      5: # once for cross compiling (with calling the host cc directly) and once
                      6: # for native compiling so that the rules also work for non-Unix environments...
                      7: if(CMAKE_CROSSCOMPILING)
                      8: 
                      9:        add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build68k
                     10:                COMMAND cc ${CMAKE_CURRENT_SOURCE_DIR}/build68k.c
                     11:                           -o ${CMAKE_CURRENT_BINARY_DIR}/build68k
                     12:                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/build68k.c)
                     13: 
                     14:        add_custom_command(OUTPUT cpudefs.c
                     15:                COMMAND ./build68k < ${CMAKE_CURRENT_SOURCE_DIR}/table68k >cpudefs.c
                     16:                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/table68k
                     17:                        ${CMAKE_CURRENT_BINARY_DIR}/build68k)
                     18: 
                     19:        add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/gencpu
                     20:                COMMAND cc -I${CMAKE_CURRENT_SOURCE_DIR}
                     21:                           cpudefs.c ${CMAKE_CURRENT_SOURCE_DIR}/gencpu.c
                     22:                           ${CMAKE_CURRENT_SOURCE_DIR}/readcpu.c
                     23:                           -o ${CMAKE_CURRENT_BINARY_DIR}/gencpu
                     24:                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/gencpu.c
                     25:                        ${CMAKE_CURRENT_SOURCE_DIR}/readcpu.c cpudefs.c)
                     26: 
1.1.1.3 ! root       27:        add_custom_command(OUTPUT cpustbl.c cpuemu_0.c cpuemu_11.c cpuemu_13.c
        !            28:                                cpuemu_20.c cpuemu_21.c cpuemu_22.c cpuemu_23.c cpuemu_24.c
        !            29:                                cpuemu_31.c cpuemu_32.c cpuemu_33.c cpuemu_40.c
1.1       root       30:                COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gencpu
                     31:                DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/gencpu)
                     32: 
                     33: else() # Rules for normal build follow
                     34: 
                     35:        add_executable(build68k build68k.c)
                     36: 
                     37:        get_target_property(BUILD68K_EXE build68k LOCATION)
                     38:        add_custom_command(OUTPUT cpudefs.c
                     39:                COMMAND ${BUILD68K_EXE} < ${CMAKE_CURRENT_SOURCE_DIR}/table68k >cpudefs.c
                     40:                DEPENDS table68k build68k)
                     41: 
                     42:        add_executable(gencpu gencpu.c readcpu.c cpudefs.c)
                     43: 
                     44:        get_target_property(GENCPU_EXE gencpu LOCATION)
1.1.1.3 ! root       45:        add_custom_command(OUTPUT cpustbl.c cpuemu_0.c cpuemu_11.c cpuemu_13.c
        !            46:                                cpuemu_20.c cpuemu_21.c cpuemu_22.c cpuemu_23.c cpuemu_24.c
        !            47:                                cpuemu_31.c cpuemu_32.c cpuemu_33.c cpuemu_40.c
1.1       root       48:                COMMAND ${GENCPU_EXE}  DEPENDS gencpu)
                     49: 
                     50: endif(CMAKE_CROSSCOMPILING)
                     51: 
                     52: 
1.1.1.3 ! root       53: # Generated cpuemu_xx.c contains a lot of warnings we don't really care about...
        !            54: set(CPUEMU_CFLAGS "-Wno-sign-compare -Wno-shadow -Wno-unused-variable")
        !            55: if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.6)
        !            56:        set (CPUEMU_CFLAGS "${CPUEMU_CFLAGS} -Wno-unused-but-set-variable")
        !            57: endif()
        !            58: 
1.1       root       59: if(CMAKE_COMPILER_IS_GNUCC)
1.1.1.3 ! root       60:        set_source_files_properties( cpuemu_0.c cpuemu_11.c cpuemu_13.c
        !            61:                cpuemu_20.c cpuemu_21.c cpuemu_22.c cpuemu_23.c cpuemu_24.c
        !            62:                cpuemu_31.c cpuemu_32.c cpuemu_33.c cpuemu_40.c cpudefs.c cpustbl.c
        !            63:                PROPERTIES COMPILE_FLAGS ${CPUEMU_CFLAGS})
        !            64: 
        !            65:        # For other files, some warnings can be hidden for release : set next if to "1" instead of "0"
        !            66:        if ( 1 )
        !            67:                set(CPUMAIN_CFLAGS "-Wno-sign-compare -Wno-unused-variable -Wno-unused-function -Wno-unused-label -Wno-maybe-uninitialized -Wno-bad-function-cast")
        !            68:                if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.6)
        !            69:                        set (CPUMAIN_CFLAGS "${CPUMAIN_CFLAGS} -Wno-unused-but-set-variable")
        !            70:                endif()
        !            71:                set_source_files_properties( newcpu.c newcpu_common.c cpummu.c fpp.c memory.c
        !            72:                        PROPERTIES COMPILE_FLAGS ${CPUMAIN_CFLAGS})
        !            73:        endif()
        !            74: 
1.1       root       75: endif(CMAKE_COMPILER_IS_GNUCC)
                     76: 
                     77: add_library(UaeCpu
1.1.1.3 ! root       78:        cpuemu_0.c cpuemu_11.c cpuemu_13.c cpuemu_20.c cpuemu_21.c cpuemu_22.c cpuemu_23.c cpuemu_24.c cpuemu_31.c
        !            79:        cpuemu_32.c cpuemu_33.c cpuemu_40.c cpudefs.c cpummu.c cpummu030.c cpustbl.c custom.c
        !            80:        debug.c events.c hatari-glue.c memory.c newcpu_common.c readcpu.c fpp.c newcpu.c
1.1       root       81:        )

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.