all repos — mgba @ f9a42d87d18ac8869d510b35f5c9477373fca8cc

mGBA Game Boy Advance Emulator

src/platform/cmake/devkitPro.cmake (view raw)

 1if(DEFINED ENV{DEVKITPRO})
 2	set(DEVKITPRO $ENV{DEVKITPRO})
 3else()
 4	message(FATAL_ERROR "Could not find DEVKITPRO in environment")
 5endif()
 6
 7set(CMAKE_SYSTEM_NAME Generic CACHE INTERNAL "system name")
 8
 9function(create_devkit DEVKIT)
10	if(DEFINED ENV{DEVKIT${DEVKIT}})
11	        set(DEVKIT${DEVKIT} $ENV{DEVKIT${DEVKIT}} PARENT_SCOPE)
12	else()
13	        set(DEVKIT${DEVKIT} ${DEVKITPRO}/devkit${DEVKIT} PARENT_SCOPE)
14	endif()
15
16	set(CMAKE_PROGRAM_PATH ${DEVKIT${DEVKIT}}/bin CACHE INTERNAL "program path")
17	set(cross_prefix_path "${CMAKE_PROGRAM_PATH}/${cross_prefix}")
18	set(cross_prefix_path "${cross_prefix_path}" PARENT_SCOPE)
19
20	set(extension)
21	if (CMAKE_HOST_WIN32)
22		set(extension .exe)
23	endif()
24
25	set(CMAKE_AR "${cross_prefix_path}gcc-ar${extension}" CACHE INTERNAL "archiver")
26	set(CMAKE_RANLIB "${cross_prefix_path}gcc-ranlib${extension}" CACHE INTERNAL "archiver")
27	set(CMAKE_C_COMPILER "${cross_prefix_path}gcc${extension}" CACHE INTERNAL "c compiler")
28	set(CMAKE_CXX_COMPILER "${cross_prefix_path}g++${extension}" CACHE INTERNAL "cxx compiler")
29	set(CMAKE_ASM_COMPILER "${cross_prefix_path}gcc${extension}" CACHE INTERNAL "assembler")
30	set(CMAKE_LINKER "${cross_prefix_path}ld${extension}" CACHE INTERNAL "linker")
31	set(CMAKE_C_FLAGS ${inc_flags} CACHE INTERNAL "c compiler flags")
32	set(CMAKE_ASM_FLAGS ${inc_flags} CACHE INTERNAL "assembler flags")
33	set(CMAKE_CXX_FLAGS ${inc_flags} CACHE INTERNAL "cxx compiler flags")
34
35	set(CMAKE_EXE_LINKER_FLAGS ${link_flags} CACHE INTERNAL "exe link flags")
36	set(CMAKE_MODULE_LINKER_FLAGS ${link_flags} CACHE INTERNAL "module link flags")
37	set(CMAKE_SHARED_LINKER_FLAGS ${link_flags} CACHE INTERNAL "shared link flags")
38
39	set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER CACHE INTERNAL "")
40	set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY CACHE INTERNAL "")
41	set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY CACHE INTERNAL "")
42	set(PKG_CONFIG_EXECUTABLE "/dev/null" CACHE INTERNAL "" FORCE)
43endfunction()