forked from cocos2d/cocos2d-x
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move BuildHelpers.CMakeLists.txt to Modules/CocosBuildHelpers.cmake, …
…this name is more standard for cmake include files, and in future this file can be installed to use by external applications.
- Loading branch information
Showing
6 changed files
with
104 additions
and
98 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,94 +1,2 @@ | ||
include(CMakeParseArguments) | ||
|
||
macro(pre_build TARGET_NAME) | ||
add_custom_target( ${TARGET_NAME}_PRE_BUILD ALL ) | ||
|
||
add_custom_command( | ||
TARGET ${TARGET_NAME}_PRE_BUILD | ||
${ARGN} | ||
PRE_BUILD | ||
COMMENT "${TARGET_NAME}_PRE_BUILD ..." | ||
) | ||
|
||
add_custom_target(${TARGET_NAME}_CORE_PRE_BUILD) | ||
add_dependencies(${TARGET_NAME}_PRE_BUILD ${TARGET_NAME}_CORE_PRE_BUILD) | ||
add_dependencies(${TARGET_NAME} ${TARGET_NAME}_PRE_BUILD) | ||
endmacro() | ||
|
||
function(cocos_mark_resources) | ||
set(oneValueArgs BASEDIR RESOURCEBASE) | ||
set(multiValueArgs FILES) | ||
cmake_parse_arguments(opt "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) | ||
|
||
if(NOT opt_RESOURCEBASE) | ||
set(opt_RESOURCEBASE Resources) | ||
endif() | ||
|
||
get_filename_component(BASEDIR_ABS ${opt_BASEDIR} ABSOLUTE) | ||
foreach(RES_FILE ${opt_FILES} ${opt_UNPARSED_ARGUMENTS}) | ||
get_filename_component(RES_FILE_ABS ${RES_FILE} ABSOLUTE) | ||
file(RELATIVE_PATH RES ${BASEDIR_ABS} ${RES_FILE_ABS}) | ||
get_filename_component(RES_LOC ${RES} PATH) | ||
set_source_files_properties(${RES_FILE} PROPERTIES | ||
MACOSX_PACKAGE_LOCATION "${opt_RESOURCEBASE}/${RES_LOC}" | ||
HEADER_FILE_ONLY 1 | ||
) | ||
endforeach() | ||
endfunction() | ||
|
||
#cmake has some strange defaults, this should help us a lot | ||
#Please use them everywhere | ||
|
||
#WINDOWS = Windows Desktop | ||
#WINRT = Windows RT | ||
#WP8 = Windows Phone 8 | ||
#ANDROID = ANDROID | ||
#IOS = IOS | ||
#MACOSX = MAC OSX | ||
|
||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") | ||
if(WINRT) | ||
set(SYSTEM_STRING "Windows RT") | ||
elseif(WP8) | ||
set(SYSTEM_STRING "Windows Phone 8") | ||
else() | ||
set(WINDOWS TRUE) | ||
set(SYSTEM_STRING "Windows Desktop") | ||
endif() | ||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||
if(ANDROID) | ||
set(SYSTEM_STRING "Android") | ||
else() | ||
set(LINUX TRUE) | ||
set(SYSTEM_STRING "Linux") | ||
endif() | ||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") | ||
if(IOS) | ||
set(SYSTEM_STRING "IOS") | ||
else() | ||
set(MACOSX TRUE) | ||
set(APPLE TRUE) | ||
set(SYSTEM_STRING "Mac OSX") | ||
endif() | ||
endif() | ||
|
||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") | ||
set(COMPILER_STRING ${CMAKE_CXX_COMPILER_ID}) | ||
set(CLANG TRUE) | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") | ||
if(MINGW) | ||
set(COMPILER_STRING "Mingw GCC") | ||
else() | ||
set(COMPILER_STRING "GCC") | ||
endif() | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") | ||
set(COMPILER_STRING "${CMAKE_CXX_COMPILER_ID} C++") | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") | ||
set(COMPILER_STRING "Visual Studio C++") | ||
endif() | ||
|
||
if(CMAKE_CROSSCOMPILING) | ||
set(BUILDING_STRING "It appears you are cross compiling for ${SYSTEM_STRING} with ${COMPILER_STRING}") | ||
else() | ||
set(BUILDING_STRING "It appears you are builing natively for ${SYSTEM_STRING} with ${COMPILER_STRING}") | ||
endif() | ||
# For compatibility only, please use include(CocosBuildHelpers) in future projects | ||
include(CocosBuildHelpers) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
include(CMakeParseArguments) | ||
|
||
macro(pre_build TARGET_NAME) | ||
add_custom_target( ${TARGET_NAME}_PRE_BUILD ALL ) | ||
|
||
add_custom_command( | ||
TARGET ${TARGET_NAME}_PRE_BUILD | ||
${ARGN} | ||
PRE_BUILD | ||
COMMENT "${TARGET_NAME}_PRE_BUILD ..." | ||
) | ||
|
||
add_custom_target(${TARGET_NAME}_CORE_PRE_BUILD) | ||
add_dependencies(${TARGET_NAME}_PRE_BUILD ${TARGET_NAME}_CORE_PRE_BUILD) | ||
add_dependencies(${TARGET_NAME} ${TARGET_NAME}_PRE_BUILD) | ||
endmacro() | ||
|
||
function(cocos_mark_resources) | ||
set(oneValueArgs BASEDIR RESOURCEBASE) | ||
set(multiValueArgs FILES) | ||
cmake_parse_arguments(opt "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) | ||
|
||
if(NOT opt_RESOURCEBASE) | ||
set(opt_RESOURCEBASE Resources) | ||
endif() | ||
|
||
get_filename_component(BASEDIR_ABS ${opt_BASEDIR} ABSOLUTE) | ||
foreach(RES_FILE ${opt_FILES} ${opt_UNPARSED_ARGUMENTS}) | ||
get_filename_component(RES_FILE_ABS ${RES_FILE} ABSOLUTE) | ||
file(RELATIVE_PATH RES ${BASEDIR_ABS} ${RES_FILE_ABS}) | ||
get_filename_component(RES_LOC ${RES} PATH) | ||
set_source_files_properties(${RES_FILE} PROPERTIES | ||
MACOSX_PACKAGE_LOCATION "${opt_RESOURCEBASE}/${RES_LOC}" | ||
HEADER_FILE_ONLY 1 | ||
) | ||
endforeach() | ||
endfunction() | ||
|
||
#cmake has some strange defaults, this should help us a lot | ||
#Please use them everywhere | ||
|
||
#WINDOWS = Windows Desktop | ||
#WINRT = Windows RT | ||
#WP8 = Windows Phone 8 | ||
#ANDROID = Android | ||
#IOS = iOS | ||
#MACOSX = MacOS X | ||
#LINUX = Linux | ||
|
||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") | ||
if(WINRT) | ||
set(SYSTEM_STRING "Windows RT") | ||
elseif(WP8) | ||
set(SYSTEM_STRING "Windows Phone 8") | ||
else() | ||
set(WINDOWS TRUE) | ||
set(SYSTEM_STRING "Windows Desktop") | ||
endif() | ||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||
if(ANDROID) | ||
set(SYSTEM_STRING "Android") | ||
else() | ||
set(LINUX TRUE) | ||
set(SYSTEM_STRING "Linux") | ||
endif() | ||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") | ||
if(IOS) | ||
set(SYSTEM_STRING "IOS") | ||
else() | ||
set(MACOSX TRUE) | ||
set(APPLE TRUE) | ||
set(SYSTEM_STRING "Mac OSX") | ||
endif() | ||
endif() | ||
|
||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") | ||
set(COMPILER_STRING ${CMAKE_CXX_COMPILER_ID}) | ||
set(CLANG TRUE) | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") | ||
if(MINGW) | ||
set(COMPILER_STRING "Mingw GCC") | ||
else() | ||
set(COMPILER_STRING "GCC") | ||
endif() | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") | ||
set(COMPILER_STRING "${CMAKE_CXX_COMPILER_ID} C++") | ||
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") | ||
set(COMPILER_STRING "Visual Studio C++") | ||
endif() | ||
|
||
if(CMAKE_CROSSCOMPILING) | ||
set(BUILDING_STRING "It appears you are cross compiling for ${SYSTEM_STRING} with ${COMPILER_STRING}") | ||
else() | ||
set(BUILDING_STRING "It appears you are builing natively for ${SYSTEM_STRING} with ${COMPILER_STRING}") | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters