diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2023-08-14 21:07:48 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2023-08-14 21:07:48 +0200 |
commit | d850e78baf62d1f472a3a296f407c127c64cec88 (patch) | |
tree | 39725643b44c91ea25809766cf95cd0b1173e880 /build/linux64 | |
parent | 15f88452d39eee5a89551a89ef2b93df5168ba2f (diff) | |
parent | c894a7cdd8686ea695602a23a511a3f1b0d047be (diff) |
Update upstream source from tag 'upstream/4.1.4'
Update to upstream version '4.1.4'
with Debian dir 403f575aa88344456029245280a05149f0173f2e
Diffstat (limited to 'build/linux64')
-rwxr-xr-x | build/linux64/CMakeLists.txt | 116 | ||||
-rw-r--r-- | build/linux64/README.linux64 | 22 |
2 files changed, 104 insertions, 34 deletions
diff --git a/build/linux64/CMakeLists.txt b/build/linux64/CMakeLists.txt index f514c5c..ce2566a 100755 --- a/build/linux64/CMakeLists.txt +++ b/build/linux64/CMakeLists.txt @@ -1,14 +1,14 @@ -cmake_minimum_required(VERSION 3.0) +cmake_minimum_required(VERSION 3.2) -project (xbase64) +project (Xbase64) set( xbase_VERSION_MAJOR 4 ) set( xbase_VERSION_MINOR 1 ) -set( xbase_VERSION_PATCH 0 ) +set( xbase_VERSION_PATCH 4 ) -MESSAGE( "--- Xbase build for: " ${CMAKE_SYSTEM_NAME} ) -MESSAGE( "--- Compiler: " ${CMAKE_CXX_COMPILER_ID} ) -MESSAGE( "--- Project Name: " ${CMAKE_PROJECT_NAME} ) -MESSAGE( "--- Install Prefix: " ${CMAKE_INSTALL_PREFIX} ) +MESSAGE( "--- Xbase build for: " ${CMAKE_SYSTEM_NAME} ) +MESSAGE( "--- Compiler: " ${CMAKE_CXX_COMPILER_ID} ) +MESSAGE( "--- Project Name: " ${CMAKE_PROJECT_NAME} ) +MESSAGE( "--- Install Prefix: " ${CMAKE_INSTALL_PREFIX} ) #Set compiler options @@ -25,7 +25,6 @@ IF( BORLAND ) add_compile_options( -w-8022 ) ENDIF( BORLAND ) - MESSAGE( "--- Checking integer sizes" ) INCLUDE(CheckTypeSize) CHECK_TYPE_SIZE( "short int" SHORT_INT ) @@ -160,6 +159,7 @@ option( XB_MEMO_SUPPORT "Compile memo field support into library" option( XB_NDX_SUPPORT "Compile NDX Index support into library" ON) option( XB_MDX_SUPPORT "Compile MDX Index support into library" ON) option( XB_LOCKING_SUPPORT "Compile Multi User Locking support into library" ON) +option( XB_TDX_SUPPORT "Compile temporary index support into library" ON) option( XB_LOGGING_SUPPORT "Compile message logging support into library" ON) option( XB_LINKLIST_SUPPORT "Compile Link List routines into library" ON) @@ -179,6 +179,7 @@ Message( "--- XB_DBF4_SUPPORT " ${XB_DBF4_SUPPORT}) Message( "--- XB_MEMO_SUPPORT " ${XB_MEMO_SUPPORT}) Message( "--- XB_NDX_SUPPORT " ${XB_NDX_SUPPORT}) Message( "--- XB_MDX_SUPPORT " ${XB_MDX_SUPPORT}) +Message( "--- XB_TDX_SUPPORT " ${XB_TDX_SUPPORT}) Message( "--- XB_LOCKING_SUPPORT " ${XB_LOCKING_SUPPORT}) Message( "--- XB_LINKLIST_SUPPORT " ${XB_LINKLIST_SUPPORT}) Message( "--- XB_FUNCTION_SUPPORT " ${XB_FUNCTION_SUPPORT}) @@ -190,6 +191,7 @@ Message( "--- XB_EXAMPLES_SUPPORT " ${XB_EXAMPLES_SUPPORT}) Message( "--- XB_LOGGING_SUPPORT " ${XB_LOGGING_SUPPORT}) Message( "--- XB_SQL_SUPPORT " ${XB_SQL_SUPPORT}) Message( "--- XB_INF_SUPPORT " ${XB_INF_SUPPORT}) +Message( "--- XB_BLOCKREAD_SUPPORT " ${XB_BLOCKREAD_SUPPORT}) IF( XB_DEBUG_SUPPORT ) Message( "--- Adding debug support" ) @@ -242,6 +244,8 @@ CHECK_FUNCTION_EXISTS(fork HAVE_FORK_F) CHECK_FUNCTION_EXISTS(_fseeki64 HAVE__FSEEKI64_F) CHECK_FUNCTION_EXISTS(fseeko HAVE_FSEEKO_F) CHECK_FUNCTION_EXISTS(ftruncate HAVE_FTRUNCATE_F) +CHECK_FUNCTION_EXISTS(getenv_s HAVE_GETENV_S_F) + CHECK_FUNCTION_EXISTS(_localtime64_s HAVE__LOCALTIME64_S_F) CHECK_FUNCTION_EXISTS(LockFile HAVE_LOCKFILE_F) CHECK_FUNCTION_EXISTS(locking HAVE_LOCKING_F) @@ -294,13 +298,15 @@ get_filename_component( PROJECT_PARENT_DIR ${PROJECT_PARENT_DIR} DIRECTORY ) # MESSAGE( "PROJECT_BINARY_DIR = " ${PROJECT_BINARY_DIR} ) -set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin/${XB_PLATFORM}) -set( LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib/${XB_PLATFORM}) -set( PROJECT_SOURCE_DIR ${PROJECT_PARENT_DIR}/src) -set( PROJECT_DATA_DIR ${PROJECT_PARENT_DIR}/data/) -set( PROJECT_LOG_DIR ${PROJECT_PARENT_DIR}/logs/) -set( EXTRA_LIBS ${EXTRA_LIBS} ${XB_LIBNAME}) +set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin ) +set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib ) +set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib ) +set( PROJECT_SOURCE_DIR ${PROJECT_PARENT_DIR}/src ) +set( PROJECT_DATA_DIR ${PROJECT_PARENT_DIR}/data ) +set( PROJECT_LOG_DIR ${PROJECT_PARENT_DIR}/logs ) +set( PROJECT_TEMP_DIR ${PROJECT_PARENT_DIR}/temp ) +set( EXTRA_LIBS ${EXTRA_LIBS} ${XB_LIBNAME} ) # Undo bad decisions @@ -320,14 +326,23 @@ IF( XB_DBF4_SUPPORT AND XB_MEMO_SUPPORT AND NOT XB_LINKLIST_SUPPORT ) set( XB_LINKLIST_SUPPORT ON CACHE BOOL "Compile Link List routines into library" FORCE ) ENDIF( XB_DBF4_SUPPORT AND XB_MEMO_SUPPORT AND NOT XB_LINKLIST_SUPPORT ) + + + IF( XB_LOCKING_SUPPORT AND NOT XB_LINKLIST_SUPPORT ) MESSAGE( "--- Link List support required for locking functions. Setting to ON" ) set( XB_LINKLIST_SUPPORT ON CACHE BOOL "Compile Link List routines into library" FORCE ) ENDIF( XB_LOCKING_SUPPORT AND NOT XB_LINKLIST_SUPPORT ) +IF( XB_TDX_SUPPORT AND NOT XB_MDX_SUPPORT ) + MESSAGE( "--- MDX support required for Temporary indices. Setting to ON" ) + set( XB_MDX_SUPPORT ON CACHE BOOL "Compile temporary index support into library" FORCE ) +ENDIF( XB_TDX_SUPPORT AND NOT XB_MDX_SUPPORT ) + IF( XB_INDEX_SUPPORT AND NOT XB_EXPRESSION_SUPPORT ) MESSAGE( "--- Expression required for indices. Setting to ON" ) set( XB_EXPRESSION_SUPPORT ON CACHE BOOL "Compile Expression support into library" FORCE ) + Set( XB_INDEX_SUPPORT "1" ) ENDIF( XB_INDEX_SUPPORT AND NOT XB_EXPRESSION_SUPPORT ) IF( XB_EXPRESSION_SUPPORT AND NOT XB_FUNCTION_SUPPORT ) @@ -360,6 +375,12 @@ IF( XB_SQL_SUPPORT AND NOT XB_BLOCKREAD_SUPPORT ) set( XB_BLOCKREAD_SUPPORT ON CACHE BOOL "Compile Block Read support into library" FORCE ) ENDIF( XB_SQL_SUPPORT AND NOT XB_BLOCKREAD_SUPPORT ) +IF( XB_TDX_SUPPORT AND NOT XB_MDX_SUPPORT ) + MESSAGE( "--- MDX support required for Temporary indices. Setting to ON" ) + set( XB_MDX_SUPPORT ON CACHE BOOL "Compile temporary index support into library" FORCE ) +ENDIF( XB_TDX_SUPPORT AND NOT XB_MDX_SUPPORT ) + + # Build configuration header file configure_file ( @@ -367,11 +388,11 @@ configure_file ( "${PROJECT_BINARY_DIR}/include/xbconfig.h" ) -# Microsoft Windows settings -IF( WIN32 ) +# Microsoft Windows compiler settings +IF( MSVC ) # add_definitions( /D_CRT_SECURE_NO_WARNINGS) add_definitions( /EHsc ) -ENDIF( WIN32 ) +ENDIF( MSVC ) # set up include directories @@ -441,6 +462,11 @@ IF( XB_MDX_SUPPORT ) set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/core/xbixmdx.cpp ) ENDIF( XB_MDX_SUPPORT ) +IF( XB_TDX_SUPPORT ) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/core/xbixtdx.cpp ) +ENDIF( XB_TDX_SUPPORT ) + + IF( XB_SQL_SUPPORT ) set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/sql/xbalttbl.cpp ) set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/sql/xbcrix.cpp ) @@ -559,14 +585,26 @@ add_test( NAME xbIxNdx COMMAND xb_test_ndx QUIET ) ENDIF( XB_DBF3_SUPPORT ) ENDIF( XB_NDX_SUPPORT ) -IF( XB_MDX_SUPPORT ) + + IF( XB_DBF4_SUPPORT ) + +IF( XB_MDX_SUPPORT ) add_executable( xb_test_mdx ${PROJECT_SOURCE_DIR}/tests/xb_test_mdx.cpp ) target_link_libraries( xb_test_mdx ${EXTRA_LIBS}) add_test( NAME xbIxMdx COMMAND xb_test_mdx QUIET ) -ENDIF( XB_DBF4_SUPPORT ) ENDIF( XB_MDX_SUPPORT ) +IF( XB_TDX_SUPPORT ) +add_executable( xb_test_tdx ${PROJECT_SOURCE_DIR}/tests/xb_test_tdx.cpp ) +target_link_libraries( xb_test_tdx ${EXTRA_LIBS}) +add_test( NAME xbIxTdx COMMAND xb_test_tdx QUIET ) +ENDIF( XB_TDX_SUPPORT ) + +ENDIF( XB_DBF4_SUPPORT ) + + + IF( XB_INDEX_SUPPORT ) add_executable( xb_test_bcd ${PROJECT_SOURCE_DIR}/tests/xb_test_bcd.cpp ) target_link_libraries( xb_test_bcd ${EXTRA_LIBS}) @@ -652,6 +690,11 @@ IF( XB_EXAMPLES_SUPPORT ) add_executable( xb_ex_ssv ${PROJECT_SOURCE_DIR}/examples/xb_ex_ssv.cpp ) target_link_libraries( xb_ex_ssv ${EXTRA_LIBS}) + IF( XB_LOGGING_SUPPORT ) + add_executable( xb_ex_log ${PROJECT_SOURCE_DIR}/examples/xb_ex_log.cpp ) + target_link_libraries( xb_ex_log ${EXTRA_LIBS}) + ENDIF( XB_LOGGING_SUPPORT ) + ENDIF( XB_EXAMPLES_SUPPORT ) #build utility programs @@ -675,6 +718,9 @@ IF( XB_UTILS_SUPPORT ) add_executable( xb_dumprecs ${PROJECT_SOURCE_DIR}/utils/xb_dumprecs.cpp ) target_link_libraries( xb_dumprecs ${EXTRA_LIBS}) + add_executable( xb_import ${PROJECT_SOURCE_DIR}/utils/xb_import.cpp ) + target_link_libraries( xb_import ${EXTRA_LIBS}) + add_executable( xb_tblinfo ${PROJECT_SOURCE_DIR}/utils/xb_tblinfo.cpp ) target_link_libraries( xb_tblinfo ${EXTRA_LIBS}) @@ -695,6 +741,7 @@ IF( XB_UTILS_SUPPORT ) install (TARGETS xb_deletall DESTINATION bin) install (TARGETS xb_dumpdbt DESTINATION bin) install (TARGETS xb_dumprecs DESTINATION bin) + install (TARGETS xb_import DESTINATION bin) install (TARGETS xb_pack DESTINATION bin) install (TARGETS xb_undelall DESTINATION bin) IF( XB_SQL_SUPPORT ) @@ -705,14 +752,16 @@ IF( XB_UTILS_SUPPORT ) ENDIF( XB_UTILS_SUPPORT ) -install (FILES include/xbconfig.h +install (FILES ${PROJECT_BINARY_DIR}/include/xbconfig.h ${PROJECT_SOURCE_DIR}/include/xbase.h ${PROJECT_SOURCE_DIR}/include/xbbcd.h + ${PROJECT_SOURCE_DIR}/include/xbblkread.h ${PROJECT_SOURCE_DIR}/include/xbdate.h ${PROJECT_SOURCE_DIR}/include/xbdbf.h ${PROJECT_SOURCE_DIR}/include/xbexp.h ${PROJECT_SOURCE_DIR}/include/xbexpnode.h ${PROJECT_SOURCE_DIR}/include/xbfile.h + ${PROJECT_SOURCE_DIR}/include/xbfilter.h ${PROJECT_SOURCE_DIR}/include/xbindex.h ${PROJECT_SOURCE_DIR}/include/xblnklst.h ${PROJECT_SOURCE_DIR}/include/xblnklstord.h @@ -723,15 +772,11 @@ install (FILES include/xbconfig.h ${PROJECT_SOURCE_DIR}/include/xbsql.h ${PROJECT_SOURCE_DIR}/include/xbssv.h ${PROJECT_SOURCE_DIR}/include/xbstring.h + ${PROJECT_SOURCE_DIR}/include/xbtag.h ${PROJECT_SOURCE_DIR}/include/xbtblmgr.h ${PROJECT_SOURCE_DIR}/include/xbtypes.h - ${PROJECT_SOURCE_DIR}/include/xbxbase.h ${PROJECT_SOURCE_DIR}/include/xbuda.h - ${PROJECT_SOURCE_DIR}/include/xbtag.h - ${PROJECT_SOURCE_DIR}/include/xbfilter.h - ${PROJECT_SOURCE_DIR}/include/xbblkread.h - ${PROJECT_SOURCE_DIR}/include/xbsql.h - + ${PROJECT_SOURCE_DIR}/include/xbxbase.h DESTINATION include/${CMAKE_PROJECT_NAME}) IF( NOT WIN32 ) @@ -741,6 +786,7 @@ install (FILES ${PROJECT_PARENT_DIR}/docs/man/xb_cfg_chk.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_deletall.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_dumpdbt.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_dumprecs.1.gz + ${PROJECT_PARENT_DIR}/docs/man/xb_import.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_pack.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_tblinfo.1.gz ${PROJECT_PARENT_DIR}/docs/man/xb_undelall.1.gz @@ -750,12 +796,14 @@ install (FILES ${PROJECT_PARENT_DIR}/docs/man/xb_cfg_chk.1.gz ENDIF( NOT WIN32 ) -SET_TARGET_PROPERTIES( ${XB_LIBNAME} PROPERTIES VERSION 4.1.0 SOVERSION 0 ) - -IF( EXISTS /usr/local/lib64 ) -install (TARGETS ${XB_LIBNAME} DESTINATION lib64/${CMAKE_PROJECT_NAME}) -ELSE( EXISTS /usr/local/lib64 ) -install (TARGETS ${XB_LIBNAME} DESTINATION lib/${CMAKE_PROJECT_NAME}) -ENDIF( EXISTS /usr/local/lib64 ) - +SET_TARGET_PROPERTIES( ${XB_LIBNAME} PROPERTIES VERSION 4.1.4 SOVERSION 0 ) +IF( WIN32 ) + install (TARGETS ${XB_LIBNAME} DESTINATION bin) +ELSE( WIN32 ) + IF( EXISTS /usr/local/lib64 ) + install (TARGETS ${XB_LIBNAME} DESTINATION lib64/${CMAKE_PROJECT_NAME}) + ELSE( EXISTS /usr/local/lib64 ) + install (TARGETS ${XB_LIBNAME} DESTINATION lib/${CMAKE_PROJECT_NAME}) + ENDIF( EXISTS /usr/local/lib64 ) +ENDIF( WIN32 ) diff --git a/build/linux64/README.linux64 b/build/linux64/README.linux64 new file mode 100644 index 0000000..e5620ef --- /dev/null +++ b/build/linux64/README.linux64 @@ -0,0 +1,22 @@ + +3/26/23 + +Install steps for Xbase64 on a linux 64 bit platform. + +1) Verify cmake is installed with command: cmake --version + If it is not installed, take necessary steps to install it. + +2) Verify gcc is intalled with the command: gcc --version + If it is not installed, take necessary steps to install it. + +3) Build xbase64 library + + cd build/linux64 (go to the appropriate build directory) + cmake . (configure for your environment) + make (compile it) + make test (test library build) + sudo make install (install it) + xb_cfg_chk (test install) + + + |