Skip to content

Commit 0b22257

Browse files
committed
Merge branch 'master' into multi-file-db-cleanup
2 parents f4b14b1 + 30b77dd commit 0b22257

File tree

1,966 files changed

+308311
-29968
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,966 files changed

+308311
-29968
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Adjust snapshot build number
2+
description: Adjust snapshot build number
3+
4+
runs:
5+
using: composite
6+
steps:
7+
- id: adjust-snapshot-buildno
8+
if:
9+
github.repository == 'FirebirdSQL/firebird' &&
10+
(github.ref_type == 'branch' &&
11+
(github.ref_name == 'master' ||
12+
(startsWith(github.ref_name, 'v') && endsWith(github.ref_name, '-release'))
13+
)
14+
) ||
15+
false
16+
shell: bash
17+
run: |
18+
sed -i'' -e "s/SuffixKind=\(.*\)/SuffixKind=\"$(echo ${{ github.sha }} | cut -c 1-7)\"/" src/misc/writeBuildNum.sh
19+
mkdir gen
20+
src/misc/writeBuildNum.sh rebuildHeader

.github/workflows/main.yml

Lines changed: 40 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ jobs:
1414
with:
1515
fetch-depth: 10
1616

17+
- name: Adjust snapshot build number
18+
uses: ./.github/actions/adjust-snapshot-buildno
19+
1720
- name: Prepare
1821
run: |
1922
sudo apt-get install libtool-bin libtomcrypt1 libtomcrypt-dev libtommath1 libtommath-dev libicu-dev zlib1g-dev cmake
@@ -55,6 +58,9 @@ jobs:
5558
with:
5659
fetch-depth: 10
5760

61+
- name: Adjust snapshot build number
62+
uses: ./.github/actions/adjust-snapshot-buildno
63+
5864
- name: Get Release Notes
5965
uses: ./.github/actions/get-release-notes
6066

@@ -96,6 +102,9 @@ jobs:
96102
with:
97103
fetch-depth: 10
98104

105+
- name: Adjust snapshot build number
106+
uses: ./.github/actions/adjust-snapshot-buildno
107+
99108
- name: Get Release Notes
100109
uses: ./.github/actions/get-release-notes
101110

@@ -123,7 +132,10 @@ jobs:
123132
fetch-depth: 10
124133

125134
- name: Prepare
126-
run: apk update && apk --no-cache --update add build-base libtool git autoconf automake cmake zlib-dev icu-dev ncurses-dev libedit-dev linux-headers tar
135+
run: apk update && apk --no-cache --update add build-base libtool git autoconf automake cmake zlib-dev icu-dev ncurses-dev libedit-dev linux-headers tar sed
136+
137+
- name: Adjust snapshot build number
138+
uses: ./.github/actions/adjust-snapshot-buildno
127139

128140
- name: Build
129141
run: |
@@ -160,6 +172,9 @@ jobs:
160172
with:
161173
fetch-depth: 10
162174

175+
- name: Adjust snapshot build number
176+
uses: ./.github/actions/adjust-snapshot-buildno
177+
163178
- name: Prepare
164179
shell: cmd
165180
run: |
@@ -210,6 +225,9 @@ jobs:
210225
with:
211226
fetch-depth: 10
212227

228+
- name: Adjust snapshot build number
229+
uses: ./.github/actions/adjust-snapshot-buildno
230+
213231
- name: Get Release Notes
214232
uses: ./.github/actions/get-release-notes
215233

@@ -271,7 +289,9 @@ jobs:
271289
272290
build-macos:
273291
name: build-macos-${{ matrix.arch }}
274-
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"
275295

276296
strategy:
277297
fail-fast: false
@@ -287,31 +307,24 @@ jobs:
287307
fetch-depth: 10
288308
submodules: 'true'
289309

310+
- name: Adjust snapshot build number
311+
uses: ./.github/actions/adjust-snapshot-buildno
312+
290313
- name: Prepare - Install tools
291314
run: |
292315
brew install automake autoconf-archive cmake libtool ninja
293316
294-
# libcxx build is not working with python >= 3.12
295-
- name: Do not use preinstalled python >= 3.12
296-
run: |
297-
brew uninstall --ignore-dependencies [email protected]
298-
[ -e /Library/Frameworks/Python.framework ] && \
299-
sudo mv /Library/Frameworks/Python.framework /Library/Frameworks/Python.framework.dont-look-at-this
300-
brew install [email protected]
301-
ln -s "$(brew --prefix [email protected])/bin/python3" "$(brew --prefix [email protected])/bin/python"
302-
303-
- name: Cache - vcpkg
304-
uses: actions/cache@v4
317+
- name: Export GitHub Actions cache environment variables
318+
uses: actions/github-script@v7
305319
with:
306-
key: ${{ runner.os }}-vcpkg-0
307-
path: |
308-
$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 || '');
309323
310324
- name: Build
311325
run: |
312326
export LIBTOOLIZE=glibtoolize
313327
export LIBTOOL=glibtool
314-
export PATH="$(brew --prefix [email protected])/bin:$PATH"
315328
316329
./autogen.sh --with-builtin-tommath --with-builtin-tomcrypt
317330
make -j4
@@ -370,6 +383,9 @@ jobs:
370383
with:
371384
fetch-depth: 10
372385

386+
- name: Adjust snapshot build number
387+
uses: ./.github/actions/adjust-snapshot-buildno
388+
373389
- name: Prepare - install Linux tools
374390
run: |
375391
sudo apt-get install libtool-bin libtomcrypt1 libtomcrypt-dev libtommath1 libtommath-dev libicu-dev zlib1g-dev
@@ -419,6 +435,9 @@ jobs:
419435
with:
420436
fetch-depth: 10
421437

438+
- name: Adjust snapshot build number
439+
uses: ./.github/actions/adjust-snapshot-buildno
440+
422441
- name: Enable KVM
423442
run: |
424443
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
@@ -482,7 +501,7 @@ jobs:
482501
path: gen/Firebird-*-android-${{ matrix.arch }}-withDebugSymbols.tar.gz
483502

484503
- name: Delete initial build
485-
uses: geekyeggo/delete-artifact@v4
504+
uses: geekyeggo/delete-artifact@v5
486505
with:
487506
name: firebird-android-initial-${{ matrix.arch }}
488507

@@ -503,6 +522,9 @@ jobs:
503522
with:
504523
fetch-depth: 10
505524

525+
- name: Adjust snapshot build number
526+
uses: ./.github/actions/adjust-snapshot-buildno
527+
506528
- name: Download final build (x86)
507529
uses: actions/download-artifact@v4
508530
with:

.github/workflows/qa.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323

2424
- name: Download firebird installer
2525
id: download-artifact
26-
uses: dawidd6/action-download-artifact@v2
26+
uses: dawidd6/action-download-artifact@v6
2727
with:
2828
github_token: ${{secrets.GITHUB_TOKEN}}
2929
workflow: main.yml

.github/workflows/tzdata-update.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ 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

2525
- name: Checkout ICU
26-
run: git clone --depth 1 https://github.com/unicode-org/icu-data.git -b main /tmp/icu-checkout
26+
run: GIT_CLONE_PROTECTION_ACTIVE=false git clone --depth 1 https://github.com/unicode-org/icu-data.git -b main /tmp/icu-checkout
2727

2828
- name: Check and update
2929
run: |

.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/docker/linux/arm32-arm64/Dockerfile

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
ARG ARG_BASE=arm64v8/ubuntu:22.04
1+
ARG ARG_BASE=arm64v8/debian:bookworm
22
ARG ARG_TARGET_ARCH=aarch64-pc-linux-gnu
33
ARG ARG_CTNF_CONFIG=crosstool-ng-config-arm64
44

5-
ARG ARG_CTNG_VERSION=1.25.0
5+
ARG ARG_CTNG_VERSION=1.26.0
66
ARG ARG_LIBTOOL_VERSION=2.4.6
77
ARG ARG_NCURSES_VERSION=6.3
88
ARG ARG_LTM_VERSION=1.2.0
9-
ARG ARG_ZLIB_VERSION=1.2.13
9+
ARG ARG_ZLIB_VERSION=1.3.1
1010
ARG ARG_ICU_VERSION=70-1
1111

12-
ARG ARG_CPUCOUNT=6
12+
ARG ARG_CPUCOUNT=24
1313

1414
ARG ARG_CTNG_UID=1000
1515
ARG ARG_CTNG_GID=1000
1616

1717

18-
FROM ubuntu:22.04 as builder
18+
FROM debian:bookworm as builder
1919

2020
ARG ARG_TARGET_ARCH
2121
ARG ARG_CTNF_CONFIG
@@ -42,6 +42,7 @@ RUN groupadd -g $ARG_CTNG_GID ctng && \
4242
sudo \
4343
automake \
4444
bison \
45+
bzip2 \
4546
chrpath \
4647
flex \
4748
gcc \
@@ -56,21 +57,21 @@ RUN groupadd -g $ARG_CTNG_GID ctng && \
5657
libtool \
5758
libtool-bin \
5859
libtool-doc \
59-
python2.7-dev \
6060
python3-dev \
6161
texinfo \
6262
make \
6363
curl \
6464
wget \
6565
unzip \
66+
xz-utils \
6667
nano && \
6768
\
6869
adduser ctng sudo && \
6970
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
7071

7172
USER ctng
7273

73-
COPY --from=asfernandes/firebird-builder:fb5-x64-ng-v1 --chown=ctng:ctng /home/ctng/x-tools /home/ctng/x-tools
74+
COPY --from=asfernandes/firebird-builder:fb6-x64-ng-v1 --chown=ctng:ctng /home/ctng/x-tools /home/ctng/x-tools
7475

7576
RUN mkdir ~/build && \
7677
curl -SL --output ~/build/icu4c-${ARG_ICU_VERSION}-src.tgz https://github.com/unicode-org/icu/releases/download/release-${ARG_ICU_VERSION}/icu4c-`echo ${ARG_ICU_VERSION} | tr - _`-src.tgz && \
@@ -109,7 +110,7 @@ RUN sudo apt-get -y remove \
109110
libtomcrypt-dev && \
110111
sudo rm -rf /var/lib/apt/lists/*
111112

112-
ENV PATH "/home/ctng/x-tools/x86_64-pc-linux-gnu/bin:${PATH}"
113+
ENV PATH "/home/ctng/x-tools/x86_64-pc-linux-gnu/bin:/home/ctng/x-tools/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sysroot/usr/local/bin:${PATH}"
113114
ENV PATH "/home/ctng/x-tools/${ARG_TARGET_ARCH}/bin:/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysroot/usr/local/bin:${PATH}"
114115

115116
RUN cd ~/build && \
@@ -184,30 +185,27 @@ RUN cd ~/build && \
184185
tar xvf icu4c-${ARG_ICU_VERSION}-src.tgz --strip 1 -C icu4c-${ARG_ICU_VERSION}-src && \
185186
mkdir icu4c-${ARG_ICU_VERSION}-build-x86_64 && \
186187
cd icu4c-${ARG_ICU_VERSION}-build-x86_64 && \
187-
../icu4c-${ARG_ICU_VERSION}-src/source/runConfigureICU \
188+
CXXFLAGS='-std=c++17 -static-libstdc++' ../icu4c-${ARG_ICU_VERSION}-src/source/runConfigureICU \
188189
Linux \
189-
--host=x86_64-pc-linux-gnu \
190-
CXXFLAGS=-std=c++17 && \
190+
--host=x86_64-pc-linux-gnu && \
191191
make -j${ARG_CPUCOUNT}
192192

193193
RUN cd ~/build && \
194194
mkdir icu4c-${ARG_ICU_VERSION}-build && \
195195
cd icu4c-${ARG_ICU_VERSION}-build && \
196-
../icu4c-${ARG_ICU_VERSION}-src/source/runConfigureICU \
196+
CXXFLAGS='-std=c++17 -static-libstdc++' ../icu4c-${ARG_ICU_VERSION}-src/source/runConfigureICU \
197197
Linux \
198198
--host=${ARG_TARGET_ARCH} \
199199
--with-cross-build=/home/ctng/build/icu4c-${ARG_ICU_VERSION}-build-x86_64 \
200200
--prefix=/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysroot/usr/local \
201-
--includedir=/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysroot/usr/include \
202-
CXXFLAGS=-std=c++17 && \
201+
--includedir=/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysroot/usr/include && \
203202
make -j${ARG_CPUCOUNT} && \
204203
make install
205204

206205

207206
FROM $ARG_BASE
208207

209208
ARG ARG_TARGET_ARCH
210-
ARG ARG_CPUCOUNT
211209
ARG ARG_CTNG_UID
212210
ARG ARG_CTNG_GID
213211

@@ -238,7 +236,6 @@ ENV LIBRARY_PATH "/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysro
238236
ENV LD_LIBRARY_PATH "/usr/x86_64-linux-gnu/lib:/home/ctng/x-tools/${ARG_TARGET_ARCH}/${ARG_TARGET_ARCH}/sysroot/usr/local/lib"
239237

240238
ENV BUILD_ARCH=$ARG_TARGET_ARCH
241-
ENV CPUCOUNT=$ARG_CPUCOUNT
242239

243240
WORKDIR /firebird
244241

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
2-
docker build \
2+
docker buildx build \
33
--pull \
4-
--build-arg ARG_BASE=arm32v7/ubuntu:22.04 \
4+
--build-arg ARG_BASE=arm32v7/debian:bookworm \
55
--build-arg ARG_TARGET_ARCH=arm-pc-linux-gnueabihf \
66
--build-arg ARG_CTNF_CONFIG=crosstool-ng-config-arm32 \
7-
-t asfernandes/firebird-builder:fb5-arm32-ng-v1 .
7+
-t asfernandes/firebird-builder:fb6-arm32-ng-v1 .
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
2-
docker build \
2+
docker buildx build \
33
--pull \
4-
--build-arg ARG_BASE=arm64v8/ubuntu:22.04 \
4+
--build-arg ARG_BASE=arm64v8/debian:bookworm \
55
--build-arg ARG_TARGET_ARCH=aarch64-pc-linux-gnu \
66
--build-arg ARG_CTNF_CONFIG=crosstool-ng-config-arm64 \
7-
-t asfernandes/firebird-builder:fb5-arm64-ng-v1 .
7+
-t asfernandes/firebird-builder:fb6-arm64-ng-v1 .

0 commit comments

Comments
 (0)