mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-02-02 10:00:38 +01:00
[build] [cmake] Move some projects to Boot folder. Improve generating of build_msg and codes. Fix Windows issue with databases.
This commit is contained in:
parent
31ccad8148
commit
23178f0d09
@ -19,6 +19,9 @@ add_custom_command(
|
|||||||
${CMAKE_CURRENT_SOURCE_DIR}/empbuild/empbld.sql
|
${CMAKE_CURRENT_SOURCE_DIR}/empbuild/empbld.sql
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove empbuild.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove empbuild.fdb
|
||||||
COMMAND isql -q -i ${CMAKE_CURRENT_SOURCE_DIR}/empbuild/empbld.sql
|
COMMAND isql -q -i ${CMAKE_CURRENT_SOURCE_DIR}/empbuild/empbld.sql
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different empbuild.fdb empbuild_.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove empbuild.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different empbuild_.fdb empbuild.fdb
|
||||||
)
|
)
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT empbuild.c
|
OUTPUT empbuild.c
|
||||||
@ -47,7 +50,7 @@ foreach(F ${files})
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${F} ${name})
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${F} ${name})
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
set(EMPBUILD_CMD empbuild employe2.fdb)
|
set(EMPBUILD_CMD empbuild employe2_.fdb)
|
||||||
set_win32(EMPBUILD_CMD set PATH=%PATH%\\\\;${output_dir} COMMAND ${EMPBUILD_CMD})
|
set_win32(EMPBUILD_CMD set PATH=%PATH%\\\\;${output_dir} COMMAND ${EMPBUILD_CMD})
|
||||||
set_unix (EMPBUILD_CMD PATH=${output_dir}/bin ${EMPBUILD_CMD})
|
set_unix (EMPBUILD_CMD PATH=${output_dir}/bin ${EMPBUILD_CMD})
|
||||||
set_apple(EMPBUILD_CMD DYLD_LIBRARY_PATH=${output_dir}/plugins:${output_dir}/lib ${EMPBUILD_CMD})
|
set_apple(EMPBUILD_CMD DYLD_LIBRARY_PATH=${output_dir}/plugins:${output_dir}/lib ${EMPBUILD_CMD})
|
||||||
@ -58,9 +61,12 @@ add_custom_command(
|
|||||||
empbuild
|
empbuild
|
||||||
${files}
|
${files}
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove employe2.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove employe2.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove employe2_.fdb
|
||||||
COMMAND ${EMPBUILD_CMD}
|
COMMAND ${EMPBUILD_CMD}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different employe2_.fdb employe2.fdb
|
||||||
)
|
)
|
||||||
add_custom_target (employee_db DEPENDS employe2.fdb SOURCES ${files})
|
add_custom_target (employee_db DEPENDS employe2.fdb SOURCES ${files})
|
||||||
|
add_dependencies_cc (employee_db engine12)
|
||||||
project_group (employee_db Examples)
|
project_group (employee_db Examples)
|
||||||
|
|
||||||
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
||||||
|
@ -115,11 +115,12 @@ add_custom_command(
|
|||||||
${CMAKE_CURRENT_SOURCE_DIR}/dbs/security.sql
|
${CMAKE_CURRENT_SOURCE_DIR}/dbs/security.sql
|
||||||
VERBATIM
|
VERBATIM
|
||||||
#
|
#
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove security3.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove security.fdb
|
||||||
COMMAND ${CMAKE_COMMAND} -E echo "create database 'security3.fdb';" > create_db_security3.sql
|
COMMAND ${CMAKE_COMMAND} -E remove security_.fdb
|
||||||
COMMAND boot_isql -q -i create_db_security3.sql
|
COMMAND ${CMAKE_COMMAND} -E echo "create database 'security_.fdb';" > create_db_security.sql
|
||||||
COMMAND boot_isql -q security3.fdb -i ${CMAKE_CURRENT_SOURCE_DIR}/dbs/security.sql
|
COMMAND boot_isql -q -i create_db_security.sql
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different security3.fdb security.fdb
|
COMMAND boot_isql -q security_.fdb -i ${CMAKE_CURRENT_SOURCE_DIR}/dbs/security.sql
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different security_.fdb security.fdb
|
||||||
)
|
)
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT metadata.fdb
|
OUTPUT metadata.fdb
|
||||||
@ -128,9 +129,71 @@ add_custom_command(
|
|||||||
${CMAKE_SOURCE_DIR}/builds/misc/metadata.gbak
|
${CMAKE_SOURCE_DIR}/builds/misc/metadata.gbak
|
||||||
#
|
#
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove metadata.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove metadata.fdb
|
||||||
COMMAND boot_gbak -r ${CMAKE_SOURCE_DIR}/builds/misc/metadata.gbak metadata.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove metadata_.fdb
|
||||||
|
COMMAND boot_gbak -r ${CMAKE_SOURCE_DIR}/builds/misc/metadata.gbak metadata_.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different metadata_.fdb metadata.fdb
|
||||||
)
|
)
|
||||||
set(isql_exec_msg boot_isql -q msg.fdb -i ${CMAKE_CURRENT_SOURCE_DIR}/msgs)
|
add_custom_command(
|
||||||
|
OUTPUT help.fdb
|
||||||
|
DEPENDS
|
||||||
|
boot_gbak
|
||||||
|
metadata.fdb
|
||||||
|
${CMAKE_SOURCE_DIR}/builds/misc/help.gbak
|
||||||
|
#
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove help.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove help_.fdb
|
||||||
|
COMMAND boot_gbak -r ${CMAKE_SOURCE_DIR}/builds/misc/help.gbak help_.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different help_.fdb help.fdb
|
||||||
|
)
|
||||||
|
add_custom_target(databases
|
||||||
|
DEPENDS
|
||||||
|
boot_engine12
|
||||||
|
help.fdb
|
||||||
|
metadata.fdb
|
||||||
|
security.fdb
|
||||||
|
SOURCES
|
||||||
|
${databases_src}
|
||||||
|
)
|
||||||
|
add_dependencies_cc(databases msg_fdb)
|
||||||
|
project_group(databases "Boot/Custom build steps")
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# BUILD STEP messages
|
||||||
|
########################################
|
||||||
|
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT firebird.msg
|
||||||
|
DEPENDS
|
||||||
|
build_msg
|
||||||
|
msg_fdb
|
||||||
|
#
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove firebird.msg
|
||||||
|
COMMAND build_msg -D msg.fdb -P ./ -F firebird.msg -L all
|
||||||
|
COMMAND build_msg -D msg.fdb -P ./ -F firebird.msg
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different firebird.msg ${output_dir}/firebird.msg
|
||||||
|
)
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT codes_headers.dummy
|
||||||
|
DEPENDS
|
||||||
|
codes
|
||||||
|
msg_fdb
|
||||||
|
COMMENT ""
|
||||||
|
#
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo "" > codes_headers.dummy
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo Building codes header...
|
||||||
|
COMMAND codes ${CMAKE_CURRENT_SOURCE_DIR}/include/gen ${CMAKE_SOURCE_DIR}/lang_helpers
|
||||||
|
)
|
||||||
|
add_custom_target(messages DEPENDS firebird.msg codes_headers.dummy)
|
||||||
|
project_group(messages "Boot/Custom build steps")
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# BUILD STEP msg_fdb
|
||||||
|
########################################
|
||||||
|
|
||||||
|
set(isql_exec_msg boot_isql -q msg_.fdb -i ${CMAKE_CURRENT_SOURCE_DIR}/msgs)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT msg.fdb
|
OUTPUT msg.fdb
|
||||||
VERBATIM
|
VERBATIM
|
||||||
@ -139,7 +202,8 @@ add_custom_command(
|
|||||||
${msgs_src}
|
${msgs_src}
|
||||||
#
|
#
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove msg.fdb
|
COMMAND ${CMAKE_COMMAND} -E remove msg.fdb
|
||||||
COMMAND ${CMAKE_COMMAND} -E echo "create database 'msg.fdb';" > create_db_msg.sql
|
COMMAND ${CMAKE_COMMAND} -E remove msg_.fdb
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo "create database 'msg_.fdb';" > create_db_msg.sql
|
||||||
COMMAND boot_isql -q -i create_db_msg.sql
|
COMMAND boot_isql -q -i create_db_msg.sql
|
||||||
COMMAND ${isql_exec_msg}/msg.sql
|
COMMAND ${isql_exec_msg}/msg.sql
|
||||||
#
|
#
|
||||||
@ -161,49 +225,15 @@ add_custom_command(
|
|||||||
COMMAND ${isql_exec_msg}/transmsgs.fr_FR2.sql
|
COMMAND ${isql_exec_msg}/transmsgs.fr_FR2.sql
|
||||||
COMMAND echo loading German translation
|
COMMAND echo loading German translation
|
||||||
COMMAND ${isql_exec_msg}/transmsgs.de_DE2.sql
|
COMMAND ${isql_exec_msg}/transmsgs.de_DE2.sql
|
||||||
)
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT help.fdb
|
|
||||||
DEPENDS
|
|
||||||
boot_gbak
|
|
||||||
metadata.fdb
|
|
||||||
${CMAKE_SOURCE_DIR}/builds/misc/help.gbak
|
|
||||||
#
|
#
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove help.fdb
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different msg_.fdb msg.fdb
|
||||||
COMMAND boot_gbak -r ${CMAKE_SOURCE_DIR}/builds/misc/help.gbak help.fdb
|
|
||||||
)
|
)
|
||||||
add_custom_target(databases
|
add_custom_target(msg_fdb
|
||||||
DEPENDS
|
DEPENDS
|
||||||
boot_engine12
|
boot_engine12
|
||||||
help.fdb
|
|
||||||
metadata.fdb
|
|
||||||
msg.fdb
|
msg.fdb
|
||||||
security.fdb
|
|
||||||
SOURCES
|
|
||||||
${databases_src}
|
|
||||||
)
|
|
||||||
project_group(databases "Custom build steps")
|
|
||||||
|
|
||||||
|
|
||||||
########################################
|
|
||||||
# BUILD STEP messages
|
|
||||||
########################################
|
|
||||||
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT firebird.msg
|
|
||||||
DEPENDS build_msg codes
|
|
||||||
#
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove firebird.msg
|
|
||||||
COMMAND build_msg -D msg.fdb -P ./ -F firebird.msg -L all
|
|
||||||
COMMAND build_msg -D msg.fdb -P ./ -F firebird.msg
|
|
||||||
)
|
|
||||||
add_custom_target(messages DEPENDS firebird.msg)
|
|
||||||
project_group(messages "Custom build steps")
|
|
||||||
add_custom_command(
|
|
||||||
TARGET messages
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different firebird.msg ${output_dir}/firebird.msg
|
|
||||||
)
|
)
|
||||||
|
project_group(msg_fdb "Boot/Custom build steps")
|
||||||
|
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
@ -231,7 +261,7 @@ add_custom_target(parse
|
|||||||
DEPENDS y_tab.h y_tab.c
|
DEPENDS y_tab.h y_tab.c
|
||||||
SOURCES ${parse_src}
|
SOURCES ${parse_src}
|
||||||
)
|
)
|
||||||
project_group(parse "Custom build steps")
|
project_group(parse "Boot/Custom build steps")
|
||||||
set_source_files_properties(dsql/parse.cpp include/gen/parse.h PROPERTIES GENERATED TRUE)
|
set_source_files_properties(dsql/parse.cpp include/gen/parse.h PROPERTIES GENERATED TRUE)
|
||||||
|
|
||||||
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
||||||
@ -384,6 +414,7 @@ target_link_libraries (yvalve
|
|||||||
PUBLIC ${LIB_iconv}
|
PUBLIC ${LIB_iconv}
|
||||||
PUBLIC ${LIB_CoreFoundation}
|
PUBLIC ${LIB_CoreFoundation}
|
||||||
)
|
)
|
||||||
|
add_dependencies_cc (yvalve databases)
|
||||||
set_exported_symbols (yvalve firebird)
|
set_exported_symbols (yvalve firebird)
|
||||||
set_output_directory_unix (yvalve lib)
|
set_output_directory_unix (yvalve lib)
|
||||||
set_target_properties (yvalve PROPERTIES OUTPUT_NAME fbclient)
|
set_target_properties (yvalve PROPERTIES OUTPUT_NAME fbclient)
|
||||||
@ -454,7 +485,7 @@ endif() # if (NOT CMAKE_CROSSCOMPILING)
|
|||||||
|
|
||||||
add_library (engine12 SHARED ${engine12_generated_src_master} ${VERSION_RC})
|
add_library (engine12 SHARED ${engine12_generated_src_master} ${VERSION_RC})
|
||||||
target_link_libraries (engine12 engine12_common alice burp common yvalve)
|
target_link_libraries (engine12 engine12_common alice burp common yvalve)
|
||||||
add_dependencies_cc (engine12 messages) # possible build during build_msg or codes run
|
add_dependencies_cc (engine12 messages)
|
||||||
set_target_properties (engine12 PROPERTIES OUTPUT_NAME Engine12)
|
set_target_properties (engine12 PROPERTIES OUTPUT_NAME Engine12)
|
||||||
set_output_directory (engine12 plugins)
|
set_output_directory (engine12 plugins)
|
||||||
set_exported_symbols (engine12 fbplugin)
|
set_exported_symbols (engine12 fbplugin)
|
||||||
@ -468,7 +499,7 @@ file(GLOB intl_src "intl/*.cpp" "intl/*.h")
|
|||||||
|
|
||||||
add_library (intl SHARED ${intl_src} ${VERSION_RC})
|
add_library (intl SHARED ${intl_src} ${VERSION_RC})
|
||||||
target_link_libraries (intl common yvalve)
|
target_link_libraries (intl common yvalve)
|
||||||
add_dependencies_cc (intl messages) # possible build during build_msg or codes run
|
add_dependencies_cc (intl messages)
|
||||||
set_target_properties (intl PROPERTIES OUTPUT_NAME fbintl)
|
set_target_properties (intl PROPERTIES OUTPUT_NAME fbintl)
|
||||||
set_output_directory (intl intl)
|
set_output_directory (intl intl)
|
||||||
|
|
||||||
@ -648,11 +679,6 @@ if (NOT CMAKE_CROSSCOMPILING)
|
|||||||
add_executable (codes ${codes_generated_src_master} ${VERSION_RC})
|
add_executable (codes ${codes_generated_src_master} ${VERSION_RC})
|
||||||
target_link_libraries (codes yvalve)
|
target_link_libraries (codes yvalve)
|
||||||
project_group (codes Boot)
|
project_group (codes Boot)
|
||||||
add_custom_command(
|
|
||||||
TARGET codes
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND codes ${CMAKE_CURRENT_SOURCE_DIR}/include/gen ${CMAKE_SOURCE_DIR}/lang_helpers
|
|
||||||
)
|
|
||||||
|
|
||||||
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
endif() # if (NOT CMAKE_CROSSCOMPILING)
|
||||||
|
|
||||||
@ -674,6 +700,7 @@ add_epp_suffix(gstat_generated_src master)
|
|||||||
|
|
||||||
add_executable (gstat ${gstat_src} ${gstat_generated_src_master} ${VERSION_RC})
|
add_executable (gstat ${gstat_src} ${gstat_generated_src_master} ${VERSION_RC})
|
||||||
target_link_libraries (gstat common yvalve)
|
target_link_libraries (gstat common yvalve)
|
||||||
|
add_dependencies_cc (gstat engine12 messages)
|
||||||
|
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
@ -856,7 +883,7 @@ add_subdirectory("utilities")
|
|||||||
add_custom_target(copy_files
|
add_custom_target(copy_files
|
||||||
#ALL # uncomment this to copy files every build
|
#ALL # uncomment this to copy files every build
|
||||||
# databases
|
# databases
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GENERATED_DIR}/security3.fdb ${output_dir}/security3.fdb
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GENERATED_DIR}/security.fdb ${output_dir}/security3.fdb
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GENERATED_DIR}/help.fdb ${output_dir}/help/help.fdb
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GENERATED_DIR}/help.fdb ${output_dir}/help/help.fdb
|
||||||
# configs, text files
|
# configs, text files
|
||||||
COMMAND sed "/@UDF_COMMENT@/d" < ${CMAKE_SOURCE_DIR}/builds/install/misc/firebird.conf.in > ${output_dir}/firebird.conf
|
COMMAND sed "/@UDF_COMMENT@/d" < ${CMAKE_SOURCE_DIR}/builds/install/misc/firebird.conf.in > ${output_dir}/firebird.conf
|
||||||
|
Loading…
Reference in New Issue
Block a user