Update CMakeLists.txt

This commit is contained in:
BLUELOVETH 2023-07-03 17:58:02 +08:00
parent d4696d6931
commit f138ef2db5

View File

@ -5,14 +5,19 @@ project(pocketpy)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_program(PYTHON3 python)
if(NOT PYTHON3)
find_program(PYTHON3 python3)
endif()
execute_process( execute_process(
COMMAND python prebuild.py COMMAND ${PYTHON3} prebuild.py
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
RESULT_VARIABLE PREBUILD_RESULT RESULT_VARIABLE PREBUILD_RESULT
) )
if(NOT ${PREBUILD_RESULT} EQUAL 0) if(NOT ${PREBUILD_RESULT} EQUAL 0)
message(FATAL_ERROR "Prebuild failed with code ${PREBUILD_RESULT}") message(FATAL_ERROR "prebuild.py: ${PREBUILD_RESULT}")
endif() endif()
if(MSVC) if(MSVC)
@ -32,14 +37,10 @@ include_directories(${CMAKE_CURRENT_LIST_DIR}/include)
aux_source_directory(${CMAKE_CURRENT_LIST_DIR}/src POCKETPY_SRC) aux_source_directory(${CMAKE_CURRENT_LIST_DIR}/src POCKETPY_SRC)
if(NOT PK_BUILD_EXE AND NOT PK_BUILD_SHARED_LIB AND NOT PK_BUILD_STATIC_LIB) if(PK_BUILD_SHARED_LIB)
set(PK_BUILD_EXE ON)
endif()
if(PK_BUILD_EXE)
add_executable(${PROJECT_NAME} ${POCKETPY_SRC} src2/main.cpp)
elseif(PK_BUILD_SHARED_LIB)
add_library(${PROJECT_NAME} SHARED ${POCKETPY_SRC} src2/lib.cpp) add_library(${PROJECT_NAME} SHARED ${POCKETPY_SRC} src2/lib.cpp)
elseif(PK_BUILD_STATIC_LIB) elseif(PK_BUILD_STATIC_LIB)
add_library(${PROJECT_NAME} STATIC ${POCKETPY_SRC} src2/lib.cpp) add_library(${PROJECT_NAME} STATIC ${POCKETPY_SRC} src2/lib.cpp)
else()
add_executable(${PROJECT_NAME} ${POCKETPY_SRC} src2/main.cpp)
endif() endif()