From bfa452a375ea0a0a3f95304a69186936567e5263 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 14 Aug 2023 19:45:36 +0200 Subject: New upstream version 4.1.4 --- docs/howto/AddAnIndex.txt | 11 ----- docs/howto/AddNewMemoFileType.txt | 9 ---- docs/howto/GettingStarted.txt | 86 --------------------------------------- docs/howto/Hacking.txt | 28 ------------- docs/howto/Locking.txt | 53 ------------------------ docs/howto/mac_cmake_compile.txt | 1 - 6 files changed, 188 deletions(-) delete mode 100755 docs/howto/AddAnIndex.txt delete mode 100755 docs/howto/AddNewMemoFileType.txt delete mode 100755 docs/howto/GettingStarted.txt delete mode 100755 docs/howto/Hacking.txt delete mode 100755 docs/howto/Locking.txt delete mode 100755 docs/howto/mac_cmake_compile.txt (limited to 'docs/howto') diff --git a/docs/howto/AddAnIndex.txt b/docs/howto/AddAnIndex.txt deleted file mode 100755 index 251caf8..0000000 --- a/docs/howto/AddAnIndex.txt +++ /dev/null @@ -1,11 +0,0 @@ - - -How to create an index - -1) Derive a child class from xbIx Pure Virtual Class - -2) Create header file -3) Create cpp file - -4) SQL updates - - xbcrix.cpp diff --git a/docs/howto/AddNewMemoFileType.txt b/docs/howto/AddNewMemoFileType.txt deleted file mode 100755 index a784d69..0000000 --- a/docs/howto/AddNewMemoFileType.txt +++ /dev/null @@ -1,9 +0,0 @@ - - -How to create a new memo file format - -1) Derive a child class from xbMemo Pure Virtual Class - -2) Create header file -3) Create cpp file -4) Update CMakeLists.txt \ No newline at end of file diff --git a/docs/howto/GettingStarted.txt b/docs/howto/GettingStarted.txt deleted file mode 100755 index a88698f..0000000 --- a/docs/howto/GettingStarted.txt +++ /dev/null @@ -1,86 +0,0 @@ - -To build the xbase library - -1) Verify you have the correct software prerequisites installed - A) cmake 2.6 or LATER - B) Compiler and linker - -2) Verify you have access to the target location of the library - -3) Unpack the tar or zip file - -4) For Linux 64 bit or 32 bit plat forms - - cd xbase/build/Linux64 or xbase/build/Linux32 - cmake . - make - make test - sudo make install - - Verify the ld.so.conf file has the library target directory - For example - update file /etc/ld.so.conf to include /usr/local/lib - and run ldconfig - Your milage may vary depending on Linux Distro - - - To update the configuration file - cd xbase/build/Linux64 or xbase/build/Linux32 - ccmake . - - - -5) For Mac - - Verify you have xcode installed and operational - cd xbase/build/Mac - cmake . -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk - make - make test - - -6) For Windows 64 bit with Visual Studio - - Open a Visual Studio 64 bit Shell - cd xbase\build\Win64VS - buildwin.bat - nmake test - - From a VS Studio 64 bit shell in admin mode - nmake install - - Also of note: cleanwin.bat resets everything - -7) For Windows 32 bit with Visual Studio - - Open a Visual Studio 32 bit Shell - cd xbase\build\Win32VS - buildwin.bat - nmake test - - From a VS Studio 32 bit shell in admin mode - nmake install - - - -8) For Windows 32 bit with Borland 5.5 free compiler - - cd xbase\build\Win32Borland - BuildBorland.bat - make test - - -9) For other platforms - - Here is something to start with... - - cd xbase - md MyPlatform - cd MyPlatform - cp ../Cmake/CmakeLists.txt . - - Enter the appropriate make command for your environment - check the cmake web site for help - On Linux, it is .cmake, then make - your mileage may vary - - Send your results to the library maintainer so it can be added to this library diff --git a/docs/howto/Hacking.txt b/docs/howto/Hacking.txt deleted file mode 100755 index 3447490..0000000 --- a/docs/howto/Hacking.txt +++ /dev/null @@ -1,28 +0,0 @@ - - -How to modify the library: - - -The library was redesigned with a structure in mind to allow additional -dbf, memo and index files to be added relatively easily without trashing -the underlying codebase. - - -To add functionality to add a DBF, or tailor a particular dbf class, -create a new derived class using the xbdbf class as a base class. -The core xbdbf base class encompasses the DBASE III code base. - -At one time there was "Real Delete" processing embedded in the code. It -was removed from the core classes because it would be incompatible with -later versions of the xbase file structures. If you were interested in -adding this back into the library, you could derive a new dbf class -and add the mods into the new derived class, leaving the base class -as it stands. - - -To add additional memo functionality, create a new derived class from -the xbMemo class. - - - -Update xbFile::DetermineXbaseVersion to identify Xbase file type \ No newline at end of file diff --git a/docs/howto/Locking.txt b/docs/howto/Locking.txt deleted file mode 100755 index b3cc832..0000000 --- a/docs/howto/Locking.txt +++ /dev/null @@ -1,53 +0,0 @@ - -Xbase64 - Multi user / Record Locking - - - -If you are using the Xbase64 library in a multi user environment, - -The Record Locking functionality of Xbase64 is designed to work in an evironment -where the files are not cached on a local client machine. - -If you are using the Xbase64 library in a multi user environment, you will need -to verify that Oplocks are turned off for the files in question. - -Oplocks is short for Opportunistic Locking. - - -If you are using Samba software as your file server software, you will -need to add the following to your smb.conf config files. - - -In the global section of the smb.conf file: - -[global] -veto oplock files = /*.dbf/*.DBF/*.dbt/*.DBT/*.ndx/*.NDX/*.cdx/*.CDX/*.mdx/*.MDX - - -Or you could set this at the share level -[share_name] -veto oplock files = /*.dbf/*.DBF/*.dbt/*.DBT/*.ndx/*.NDX/*.cdx/*.CDX/*.mdx/*.MDX - - -Sometimes locking issues can be related to the network config, more than the programs -For example, the locking logic might fail if the underlying file structure does not -support it. - -Mac OSX does not support locking functionality on SMB / Samba shares -Mac OSX does support locking functionality on NFS shares -Per Apple, this is by design - - -Function: xbase::SetMultiUser( xbTrue || xbFalse ) - - Use this function to turn multi user mode on or off. - This function needs to be called before any files are opened or created. - If this function is called after files are opened or created, the files - will need to be closed and reopened for this setting to take effect. - - This setting turns file buffering on and off. In a single user environment, - set this switch to off to improve the performance of the application. - - - - diff --git a/docs/howto/mac_cmake_compile.txt b/docs/howto/mac_cmake_compile.txt deleted file mode 100755 index 4ec0ad6..0000000 --- a/docs/howto/mac_cmake_compile.txt +++ /dev/null @@ -1 +0,0 @@ -cmake . -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -- cgit v1.2.3 From c894a7cdd8686ea695602a23a511a3f1b0d047be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 14 Aug 2023 21:07:46 +0200 Subject: New upstream version 4.1.4 --- docs/howto/AddAnIndex.txt | 11 +++++ docs/howto/AddNewMemoFileType.txt | 9 ++++ docs/howto/GettingStarted.txt | 86 +++++++++++++++++++++++++++++++++++++++ docs/howto/Hacking.txt | 28 +++++++++++++ docs/howto/Locking.txt | 53 ++++++++++++++++++++++++ docs/howto/mac_cmake_compile.txt | 1 + 6 files changed, 188 insertions(+) create mode 100755 docs/howto/AddAnIndex.txt create mode 100755 docs/howto/AddNewMemoFileType.txt create mode 100755 docs/howto/GettingStarted.txt create mode 100755 docs/howto/Hacking.txt create mode 100755 docs/howto/Locking.txt create mode 100755 docs/howto/mac_cmake_compile.txt (limited to 'docs/howto') diff --git a/docs/howto/AddAnIndex.txt b/docs/howto/AddAnIndex.txt new file mode 100755 index 0000000..251caf8 --- /dev/null +++ b/docs/howto/AddAnIndex.txt @@ -0,0 +1,11 @@ + + +How to create an index + +1) Derive a child class from xbIx Pure Virtual Class + +2) Create header file +3) Create cpp file + +4) SQL updates + - xbcrix.cpp diff --git a/docs/howto/AddNewMemoFileType.txt b/docs/howto/AddNewMemoFileType.txt new file mode 100755 index 0000000..a784d69 --- /dev/null +++ b/docs/howto/AddNewMemoFileType.txt @@ -0,0 +1,9 @@ + + +How to create a new memo file format + +1) Derive a child class from xbMemo Pure Virtual Class + +2) Create header file +3) Create cpp file +4) Update CMakeLists.txt \ No newline at end of file diff --git a/docs/howto/GettingStarted.txt b/docs/howto/GettingStarted.txt new file mode 100755 index 0000000..d6497a2 --- /dev/null +++ b/docs/howto/GettingStarted.txt @@ -0,0 +1,86 @@ + +To build the xbase library + +1) Verify you have the correct software prerequisites installed + A) cmake 2.6 or LATER + B) Compiler and linker + +2) Verify you have access to the target location of the library + +3) Unpack the tar or zip file + +4) For Linux 64 bit or 32 bit plat forms + + cd xbase/build/Linux64 or xbase/build/Linux32 + cmake . + make + make test + sudo make install + + Verify the ld.so.conf file has the library target directory + For example + update file /etc/ld.so.conf to include /usr/local/lib + and run ldconfig + Your mileage may vary depending on Linux Distro + + + To update the configuration file + cd xbase/build/Linux64 or xbase/build/Linux32 + ccmake . + + + +5) For Mac + + Verify you have xcode installed and operational + cd xbase/build/Mac + cmake . -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk + make + make test + + +6) For Windows 64 bit with Visual Studio + + Open a Visual Studio 64 bit Shell + cd xbase\build\Win64VS + buildwin.bat + nmake test + + From a VS Studio 64 bit shell in admin mode + nmake install + + Also of note: cleanwin.bat resets everything + +7) For Windows 32 bit with Visual Studio + + Open a Visual Studio 32 bit Shell + cd xbase\build\Win32VS + buildwin.bat + nmake test + + From a VS Studio 32 bit shell in admin mode + nmake install + + + +8) For Windows 32 bit with Borland 5.5 free compiler + + cd xbase\build\Win32Borland + BuildBorland.bat + make test + + +9) For other platforms + + Here is something to start with... + + cd xbase + md MyPlatform + cd MyPlatform + cp ../Cmake/CmakeLists.txt . + + Enter the appropriate make command for your environment - check the cmake web site for help + On Linux, it is .cmake, then make + your mileage may vary + + Send your results to the library maintainer so it can be added to this library diff --git a/docs/howto/Hacking.txt b/docs/howto/Hacking.txt new file mode 100755 index 0000000..3447490 --- /dev/null +++ b/docs/howto/Hacking.txt @@ -0,0 +1,28 @@ + + +How to modify the library: + + +The library was redesigned with a structure in mind to allow additional +dbf, memo and index files to be added relatively easily without trashing +the underlying codebase. + + +To add functionality to add a DBF, or tailor a particular dbf class, +create a new derived class using the xbdbf class as a base class. +The core xbdbf base class encompasses the DBASE III code base. + +At one time there was "Real Delete" processing embedded in the code. It +was removed from the core classes because it would be incompatible with +later versions of the xbase file structures. If you were interested in +adding this back into the library, you could derive a new dbf class +and add the mods into the new derived class, leaving the base class +as it stands. + + +To add additional memo functionality, create a new derived class from +the xbMemo class. + + + +Update xbFile::DetermineXbaseVersion to identify Xbase file type \ No newline at end of file diff --git a/docs/howto/Locking.txt b/docs/howto/Locking.txt new file mode 100755 index 0000000..b3cc832 --- /dev/null +++ b/docs/howto/Locking.txt @@ -0,0 +1,53 @@ + +Xbase64 - Multi user / Record Locking + + + +If you are using the Xbase64 library in a multi user environment, + +The Record Locking functionality of Xbase64 is designed to work in an evironment +where the files are not cached on a local client machine. + +If you are using the Xbase64 library in a multi user environment, you will need +to verify that Oplocks are turned off for the files in question. + +Oplocks is short for Opportunistic Locking. + + +If you are using Samba software as your file server software, you will +need to add the following to your smb.conf config files. + + +In the global section of the smb.conf file: + +[global] +veto oplock files = /*.dbf/*.DBF/*.dbt/*.DBT/*.ndx/*.NDX/*.cdx/*.CDX/*.mdx/*.MDX + + +Or you could set this at the share level +[share_name] +veto oplock files = /*.dbf/*.DBF/*.dbt/*.DBT/*.ndx/*.NDX/*.cdx/*.CDX/*.mdx/*.MDX + + +Sometimes locking issues can be related to the network config, more than the programs +For example, the locking logic might fail if the underlying file structure does not +support it. + +Mac OSX does not support locking functionality on SMB / Samba shares +Mac OSX does support locking functionality on NFS shares +Per Apple, this is by design + + +Function: xbase::SetMultiUser( xbTrue || xbFalse ) + + Use this function to turn multi user mode on or off. + This function needs to be called before any files are opened or created. + If this function is called after files are opened or created, the files + will need to be closed and reopened for this setting to take effect. + + This setting turns file buffering on and off. In a single user environment, + set this switch to off to improve the performance of the application. + + + + diff --git a/docs/howto/mac_cmake_compile.txt b/docs/howto/mac_cmake_compile.txt new file mode 100755 index 0000000..4ec0ad6 --- /dev/null +++ b/docs/howto/mac_cmake_compile.txt @@ -0,0 +1 @@ +cmake . -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -- cgit v1.2.3