Skip to content

Commit 55dfad1

Browse files
author
Alexander Zhdanov
committed
Merge branch 'firebird_master' into port2firebird_tablespaces2
2 parents 785a411 + c4bc943 commit 55dfad1

File tree

1,823 files changed

+300435
-25895
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,823 files changed

+300435
-25895
lines changed

.github/workflows/main.yml

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,9 @@ jobs:
289289
290290
build-macos:
291291
name: build-macos-${{ matrix.arch }}
292-
runs-on: ${{ (matrix.arch == 'arm64' && 'macos-14') || 'macos-12' }}
292+
runs-on: ${{ (matrix.arch == 'arm64' && 'macos-14') || 'macos-13' }}
293+
env:
294+
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
293295

294296
strategy:
295297
fail-fast: false
@@ -312,27 +314,17 @@ jobs:
312314
run: |
313315
brew install automake autoconf-archive cmake libtool ninja
314316
315-
# libcxx build is not working with python >= 3.12
316-
- name: Do not use preinstalled python >= 3.12
317-
run: |
318-
brew uninstall --ignore-dependencies [email protected]
319-
[ -e /Library/Frameworks/Python.framework ] && \
320-
sudo mv /Library/Frameworks/Python.framework /Library/Frameworks/Python.framework.dont-look-at-this
321-
brew install [email protected]
322-
ln -s "$(brew --prefix [email protected])/bin/python3" "$(brew --prefix [email protected])/bin/python"
323-
324-
- name: Cache - vcpkg
325-
uses: actions/cache@v4
317+
- name: Export GitHub Actions cache environment variables
318+
uses: actions/github-script@v7
326319
with:
327-
key: ${{ runner.os }}-vcpkg-0
328-
path: |
329-
$HOME/.cache/vcpkg/archives
320+
script: |
321+
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
322+
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
330323
331324
- name: Build
332325
run: |
333326
export LIBTOOLIZE=glibtoolize
334327
export LIBTOOL=glibtool
335-
export PATH="$(brew --prefix [email protected])/bin:$PATH"
336328
337329
./autogen.sh --with-builtin-tommath --with-builtin-tomcrypt
338330
make -j4

.github/workflows/tzdata-update.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- v4.0-release
1919

2020
steps:
21-
- uses: actions/checkout@v3
21+
- uses: actions/checkout@v4
2222
with:
2323
ref: ${{ matrix.branch }}
2424

.vscode/c_cpp_properties.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33
{
44
"name": "Linux",
55
"includePath": [
6-
"${workspaceFolder}/**"
6+
"${workspaceFolder}/src/include/gen",
7+
"${workspaceFolder}/src/include",
8+
"${workspaceFolder}/extern/boost",
9+
"${workspaceFolder}/extern/libcds"
710
],
811
"defines": [
912
"DEV_BUILD"

.vscode/settings.json

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,16 @@
88
"[markdown]": {
99
"files.trimTrailingWhitespace": false
1010
},
11+
"files.readonlyInclude": {
12+
"temp/**": true
13+
},
1114

1215
"files.insertFinalNewline": true,
13-
14-
"files.exclude": {
15-
"temp": true,
16-
"gen": true
16+
"files.associations": {
17+
"*.epp": "cpp"
18+
},
19+
"search.exclude": {
20+
"temp/**": true,
21+
"gen/**": true
1722
}
1823
}

builds/install/arch-specific/android/BuildFinalPackage.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ $ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "rm -rf $AndroidDir
4343
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "mkdir $AndroidDir"
4444
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName push gen/$InitialDebugTar $AndroidDir/
4545
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "(cd $AndroidDir && tar xvf $InitialDebugTar)"
46-
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "(cd $AndroidDir/firebird && ./common_test --log_level=all && ./libEngine13_test --log_level=all)"
46+
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "(cd $AndroidDir/firebird && ./common_test --log_level=all && ./libEngine14_test --log_level=all)"
4747
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName shell "(cd $AndroidDir/firebird && ./AfterUntar.sh)"
4848
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName pull $AndroidDir/firebird/firebird.msg gen/Release/firebird/
4949
$ANDROID_HOME/platform-tools/adb -s $AndroidDeviceName pull $AndroidDir/firebird/security6.fdb gen/Release/firebird/

builds/install/arch-specific/linux/makeInstallImage.sh.in

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -248,9 +248,8 @@ copyFiles() {
248248

249249
#include (.h .pas files)
250250
cp $BuiltFBDir/include/*.h ${TargetDir}@FB_INCDIR@
251-
cp $BuiltFBDir/include/firebird/impl/iberror_c.h ${TargetDir}@FB_INCDIR@/firebird/impl
252-
cp $BuildRootDir/src/include/firebird/*.h ${TargetDir}@FB_INCDIR@/firebird
253-
tar -C $BuildRootDir/src/include/firebird -cf - impl | tar -C ${TargetDir}@FB_INCDIR@/firebird -x
251+
cp $BuiltFBDir/include/firebird/*.h ${TargetDir}@FB_INCDIR@/firebird
252+
tar -C $BuiltFBDir/include/firebird -cf - impl | tar -C ${TargetDir}@FB_INCDIR@/firebird -x
254253
if [ "$CLIENT_ONLY_FLG" = "N" ]; then
255254
cp $BuildRootDir/src/include/gen/Firebird.pas ${TargetDir}@FB_INCDIR@/firebird
256255
fi

builds/install/arch-specific/solaris/CS/prototype.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ s none /usr/lib/libfbclient.so.2=@prefix@/lib/libfbclient.so.2
3838

3939
d none @prefix@/include 0751 firebird firebird
4040
f none @prefix@/include/ib_util.h=$SRCDIR/include/ib_util.h 0444 firebird firebird
41-
f none @prefix@/include/perf.h=$SRCDIR/include/perf.h 0444 firebird firebird
4241
f none @prefix@/include/iberror.h=$SRCDIR/include/iberror.h 0444 firebird firebird
4342
f none @prefix@/include/ibase.h=$SRCDIR/include/ibase.h 0444 firebird firebird
4443

builds/install/arch-specific/solaris/SS/prototype.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ s none /usr/lib/libfbclient.so.2=@prefix@/lib/libfbclient.so.2
3838

3939
d none @prefix@/include 0755 firebird firebird
4040
f none @prefix@/include/ib_util.h=$SRCDIR/include/ib_util.h 0644 firebird firebird
41-
f none @prefix@/include/perf.h=$SRCDIR/include/perf.h 0644 firebird firebird
4241
f none @prefix@/include/iberror.h=$SRCDIR/include/iberror.h 0644 firebird firebird
4342
f none @prefix@/include/ibase.h=$SRCDIR/include/ibase.h 0644 firebird firebird
4443

builds/install/arch-specific/solx86gcc/CS/prototype.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,6 @@ f none @prefix@/include/blr.h=$SRCDIR/include/blr.h 0644 root root
108108
f none @prefix@/include/ib_util.h=$SRCDIR/include/ib_util.h 0644 root root
109109
f none @prefix@/include/ibase.h=$SRCDIR/include/ibase.h 0644 root root
110110
f none @prefix@/include/iberror.h=$SRCDIR/include/iberror.h 0644 root root
111-
f none @prefix@/include/perf.h=$SRCDIR/include/perf.h 0644 root root
112111

113112
d none @prefix@/intl 0755 root root
114113
f none @prefix@/intl/libfbintl.so=$SRCDIR/intl/libfbintl.so 0755 root root

builds/install/arch-specific/win32/BuildExecutableInstall.bat

Lines changed: 46 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ if not defined FB2_SNAPSHOT (set FB2_SNAPSHOT=0)
5454

5555
:: Are we doing a snapshot build? If so we always do less work.
5656
if "%FB2_SNAPSHOT%"=="1" (
57-
(set FBBUILD_ISX_PACK=0)
57+
( set FBBUILD_ISX_PACK=0 )
5858
)
5959

6060

@@ -69,14 +69,14 @@ if "%FB2_SNAPSHOT%"=="1" (
6969
:: let's bail out now.
7070

7171
@echo o Checking for sed...
72-
(cmd /c "sed.exe --version 2>&1 > nul ") || ( call :ERROR Could not locate sed && @goto :EOF )
72+
@(cmd /c "sed.exe --version 2>&1 > nul ") || ( call :ERROR Could not locate sed & goto :EOF )
7373

7474
@echo o Checking for unix2dos...
75-
(cmd /c "unix2dos.exe --quiet --version 2>&1 > nul" ) || ( call :ERROR Could not locate unix2dos && @goto :EOF )
75+
@(cmd /c "unix2dos.exe --quiet --version 2>&1 > nul" ) || ( call :ERROR Could not locate unix2dos & goto :EOF )
7676

77-
@for /f "usebackq tokens=*" %%c in (`where /f md5sum 2^>nul`) do set MD5_COMMAND=%%c
78-
if defined MD5_COMMAND (
79-
@echo o POSIX md5sum utility found at %MD5_COMMAND%
77+
@for /f "usebackq tokens=*" %%c in ( `where /f md5sum 2^>nul` ) do set MD5_COMMAND=%%c
78+
@if defined MD5_COMMAND (
79+
echo o POSIX md5sum utility found at %MD5_COMMAND%
8080
)
8181

8282
@if %FBBUILD_ZIP_PACK% EQU 1 (
@@ -101,8 +101,8 @@ if defined MD5_COMMAND (
101101
for /f "usebackq tokens=*" %%c in ( `where /f iscc 2^>nul` ) do set ISCC_COMMAND=%%c
102102
)
103103
@if not defined ISCC_COMMAND (
104-
@echo Required Inno Setup compiler not found
105-
@exit /b 1
104+
echo Required Inno Setup compiler not found
105+
exit /b 1
106106
)
107107
@echo o Inno Setup found as %ISCC_COMMAND%.
108108

@@ -114,17 +114,17 @@ if defined MD5_COMMAND (
114114
echo WiX is needed to build the MSI kits of the CRT runtimes.
115115
echo.
116116
) else (
117-
echo o WiX found at "%WIX%".
117+
echo o WiX found at "%WIX%".
118118
)
119119

120120
@if not defined FB_EXTERNAL_DOCS (
121-
echo.
122-
echo The FB_EXTERNAL_DOCS environment var is not defined
123-
echo It should point to the directory containing the relevant release notes
124-
echo in adobe pdf format.
125-
echo.
121+
echo.
122+
echo The FB_EXTERNAL_DOCS environment var is not defined
123+
echo It should point to the directory containing the relevant release notes
124+
echo in adobe pdf format.
125+
echo.
126126
) else (
127-
echo o Package will include documentation from "%FB_EXTERNAL_DOCS%".
127+
echo o Package will include documentation from "%FB_EXTERNAL_DOCS%".
128128
)
129129

130130

@@ -137,7 +137,7 @@ if defined MD5_COMMAND (
137137
::==========
138138

139139
:: Cut off everything that is not #define to let Inno Setup use it
140-
@findstr /B /L "#define" "%FB_ROOT_PATH%\src\jrd\build_no.h" >"%FB_ROOT_PATH%\gen\jrd\build_no.h"
140+
@findstr /B /L "#define" "%FB_ROOT_PATH%\src\jrd\build_no.h" > "%FB_ROOT_PATH%\gen\jrd\build_no.h"
141141
:: Read version parameters from build_no.h
142142
@for /F "tokens=2*" %%a in ( %FB_ROOT_PATH%\gen\jrd\build_no.h ) do (
143143
echo Setting %%a to %%~b
@@ -192,7 +192,7 @@ set FBBUILD_INSTALL_IMAGES=%FB_ROOT_PATH%\builds\install_images
192192
%SED_COMMAND% %%f > %FB_GEN_DIR%\readmes\%%f
193193
)
194194
@for %%d in (ba cz de es fr hu it pl pt ru si ) do (
195-
if not exist %FB_GEN_DIR%\readmes\%%d ( @mkdir %FB_GEN_DIR%\readmes\%%d )
195+
if not exist %FB_GEN_DIR%\readmes\%%d ( mkdir %FB_GEN_DIR%\readmes\%%d )
196196
for %%f in ( %%d\*.txt ) do (
197197
echo Processing version strings in %%f
198198
%SED_COMMAND% %%f > %FB_GEN_DIR%\readmes\%%f
@@ -201,6 +201,9 @@ set FBBUILD_INSTALL_IMAGES=%FB_ROOT_PATH%\builds\install_images
201201

202202
@endlocal
203203

204+
:: Dump env vars to file for later testing.
205+
@set > %FB_ROOT_PATH%\builds\install\arch-specific\win32\test_installer\fb_build_vars_%PROCESSOR_ARCHITECTURE%.txt
206+
204207
::End of SET_VERSION
205208
::----------------
206209
@goto :EOF
@@ -232,11 +235,13 @@ set FBBUILD_INSTALL_IMAGES=%FB_ROOT_PATH%\builds\install_images
232235
)
233236
)
234237

235-
@where /Q implib.exe
236-
@if not ERRORLEVEL 1 (
237-
if "%VSCMD_ARG_TGT_ARCH%"=="x86" (
238-
echo Generating fbclient_bor.lib
238+
@if "%VSCMD_ARG_TGT_ARCH%"=="x86" (
239+
echo Generating fbclient_bor.lib
240+
where /Q implib.exe
241+
if not ERRORLEVEL 1 (
239242
implib %FB_OUTPUT_DIR%\lib\fbclient_bor.lib %FB_OUTPUT_DIR%\fbclient.dll > nul
243+
) else (
244+
call :WARNING implib not found
240245
)
241246
)
242247

@@ -289,7 +294,7 @@ set FBBUILD_INSTALL_IMAGES=%FB_ROOT_PATH%\builds\install_images
289294
@mkdir %FB_OUTPUT_DIR%\doc\sql.extensions 2>nul
290295
@if ERRORLEVEL 2 ( ( call :ERROR MKDIR for doc\sql.extensions dir failed) & ( goto :EOF ) )
291296
@copy %FB_ROOT_PATH%\doc\sql.extensions\*.* %FB_OUTPUT_DIR%\doc\sql.extensions\ > nul
292-
@if ERRORLEVEL 1 ( ( call :ERROR Copying doc\sql.extensions failed ) & ( goto :EOF ) )
297+
@if ERRORLEVEL 1 ( ( call :ERROR Copying doc\sql.extensions failed ) & ( goto :EOF ) )
293298

294299
:: External docs aren't necessary for a snapshot build, so we don't throw
295300
:: an error if FB_EXTERNAL_DOCS is not defined. On the other hand,
@@ -300,15 +305,17 @@ set FBBUILD_INSTALL_IMAGES=%FB_ROOT_PATH%\builds\install_images
300305
echo ... %FB_EXTERNAL_DOCS%\%%v to %FB_OUTPUT_DIR%\doc\%%v
301306
copy /Y %FB_EXTERNAL_DOCS%\%%v %FB_OUTPUT_DIR%\doc\%%v > nul
302307
if ERRORLEVEL 1 (
303-
call :ERROR Copying %FB_EXTERNAL_DOCS%\%%v to %FB_OUTPUT_DIR%\doc\%%v FAILED. & @goto :EOF
308+
call :ERROR Copying %FB_EXTERNAL_DOCS%\%%v to %FB_OUTPUT_DIR%\doc\%%v FAILED. & goto :EOF
304309
)
305310
)
306311

307312
echo Copying optional pdf docs...
308313
for %%v in ( firebird-%FB_MAJOR_VER%-quickstartguide.pdf ) do (
309314
echo ... %%v
310315
copy /Y %FB_EXTERNAL_DOCS%\%%v %FB_OUTPUT_DIR%\doc\%%v > nul
311-
if ERRORLEVEL 1 ( call :WARNING Copying %FB_EXTERNAL_DOCS%\%%v to %FB_OUTPUT_DIR%\doc\%%v FAILED. & @goto :EOF )
316+
if ERRORLEVEL 1 (
317+
call :WARNING Copying %FB_EXTERNAL_DOCS%\%%v to %FB_OUTPUT_DIR%\doc\%%v FAILED.
318+
)
312319
)
313320

314321
echo Finished copying pdf docs...
@@ -333,7 +340,7 @@ for %%v in (IPLicense.txt IDPLicense.txt ) do (
333340

334341
:: Walk through all docs and transform any that are not .txt, .pdf or .html to .txt
335342
@echo Setting .txt filetype to ascii docs.
336-
for /R %FB_OUTPUT_DIR%\doc %%v in ( * ) do (
343+
@for /R %FB_OUTPUT_DIR%\doc %%v in ( * ) do (
337344
if /I not "%%~xv" == ".md" (
338345
if /I not "%%~xv" == ".txt" (
339346
if /I not "%%~xv" == ".pdf" (
@@ -390,12 +397,10 @@ for /R %FB_OUTPUT_DIR%\doc %%v in ( * ) do (
390397
:: grab some missing bits'n'pieces from different parts of the source tree
391398
::=========================================================================
392399
@echo Copying ib_util etc
393-
@copy %FB_ROOT_PATH%\src\extlib\ib_util.h %FB_OUTPUT_DIR%\include > nul || (call :WARNING Copying ib_util.h failed. && @goto :EOF )
394-
@copy %FB_ROOT_PATH%\src\misc\pascal\ib_util.pas %FB_OUTPUT_DIR%\include > nul || (call :WARNING Copying ib_util.pas failed. && @goto :EOF )
400+
@copy %FB_ROOT_PATH%\src\misc\pascal\ib_util.pas %FB_OUTPUT_DIR%\include > nul || (call :ERROR Copying ib_util.pas failed. & goto :EOF )
395401

396402
@echo Copying other include files required for development...
397-
set OUTPATH=%FB_OUTPUT_DIR%\include
398-
@copy %FB_ROOT_PATH%\src\yvalve\perf.h %OUTPATH%\ > nul
403+
@set OUTPATH=%FB_OUTPUT_DIR%\include
399404
@copy %FB_ROOT_PATH%\src\include\gen\firebird.pas %OUTPATH%\firebird\ > nul || (@call :ERROR Failure executing copy %FB_ROOT_PATH%\src\include\gen\firebird.pas %OUTPATH%\firebird\ )
400405
@if ERRORLEVEL 1 goto :END
401406

@@ -424,7 +429,7 @@ set OUTPATH=%FB_OUTPUT_DIR%\include
424429
::=================================================================
425430
@if not exist %FB_OUTPUT_DIR%\firebird.msg (
426431
copy %FB_GEN_DIR%\firebird.msg %FB_OUTPUT_DIR%\firebird.msg > nul
427-
if ERRORLEVEL 1 ( call :ERROR Could not copy firebird.msg & goto :EOF )
432+
if ERRORLEVEL 1 ( call :ERROR Could not copy firebird.msg & goto :EOF )
428433
)
429434

430435
::End of FB_MSG
@@ -437,7 +442,7 @@ set OUTPATH=%FB_OUTPUT_DIR%\include
437442
:: that and they all have windows EOL
438443
::===============================================
439444
@for /R %FB_OUTPUT_DIR% %%W in ( *.txt *.conf *.sql *.c *.cpp *.hpp *.h *.bat *.pas *.e *.def *.rc *.md *.html ) do (
440-
unix2dos --quiet --safe %%W || exit /b 1
445+
unix2dos --safe %%W > nul 2>&1 || exit /b 1
441446
)
442447

443448
::End of SET_CRLF
@@ -627,40 +632,40 @@ popd
627632

628633
@echo.
629634
@echo Reading command-line parameters...
630-
@(@call :SET_PARAMS %* )
631-
@if ERRORLEVEL 1 (@call :ERROR Calling SET_PARAMS & goto :END)
635+
@(call :SET_PARAMS %* )
636+
@if ERRORLEVEL 1 (call :ERROR Calling SET_PARAMS & goto :END)
632637

633638
@echo.
634639
@echo Checking that all required components are available...
635-
@(@call :CHECK_ENVIRONMENT ) || ( @echo Error calling CHECK_ENVIRONMENT && @goto :END )
640+
@( call :CHECK_ENVIRONMENT ) || ( echo Error calling CHECK_ENVIRONMENT & goto :END )
636641
@echo.
637642

638643
@echo Setting version number...
639-
@(@call :SET_VERSION ) || (@echo Error calling SET_VERSION && @goto :END )
644+
@( call :SET_VERSION ) || ( echo Error calling SET_VERSION & goto :END )
640645
@echo.
641646

642647
@echo Copying additional files needed for installation, documentation etc.
643-
@( @call :COPY_XTRA ) || ( @echo Error calling COPY_XTRA && @goto :END )
648+
@( call :COPY_XTRA ) || ( echo Error calling COPY_XTRA & goto :END )
644649
@echo.
645650

646651
:: WIX is not necessary for a snapshot build, so we don't throw
647652
:: an error if WIX is not defined. On the other hand,
648653
:: if it is there anyway, use it.
649654
@if defined WIX (
650655
echo Building MSI runtimes
651-
( call :BUILD_CRT_MSI ) || ( echo Error calling BUILD_CRT_MSI & @goto :END )
656+
( call :BUILD_CRT_MSI ) || ( echo Error calling BUILD_CRT_MSI & goto :END )
652657
echo.
653658
)
654659

655660
@echo Prepare include directory
656-
@( call :INCLUDE_DIR ) || ( @echo Error calling INCLUDE_DIR & @goto :END )
661+
@( call :INCLUDE_DIR ) || ( echo Error calling INCLUDE_DIR & goto :END )
657662
@echo.
658663

659664
@echo Writing databases conf
660-
@(call :DB_CONF ) || ( echo Error calling DB_CONF & goto :END )
665+
@( call :DB_CONF ) || ( echo Error calling DB_CONF & goto :END )
661666
@echo.
662667
@echo Copying firebird.msg
663-
@(call :FB_MSG ) || ( echo Error calling FB_MSG & goto :END )
668+
@( call :FB_MSG ) || ( echo Error calling FB_MSG & goto :END )
664669
@echo.
665670

666671
@echo Fix up line endings...
@@ -675,7 +680,7 @@ popd
675680

676681
@if %FBBUILD_ISX_PACK% EQU 1 (
677682
echo Now let's compile the InnoSetup scripts
678-
( call :ISX_PACK ) || ( echo Error calling ISX_PACK & goto :END )
683+
( call :ISX_PACK ) || ( echo Error calling ISX_PACK & goto :END )
679684
echo.
680685
)
681686

@@ -698,4 +703,3 @@ popd
698703

699704
exit /b %ERRLEV%
700705

701-

0 commit comments

Comments
 (0)