Skip to content

Commit 32f8645

Browse files
committed
Reorganize sources
1 parent f068727 commit 32f8645

File tree

452 files changed

+3600
-3355
lines changed

Some content is hidden

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

452 files changed

+3600
-3355
lines changed

.ci/ci_build.sh

+68-115
Original file line numberDiff line numberDiff line change
@@ -27,74 +27,61 @@ fi
2727

2828
[ -z "${USE_STANDARD_INSTALLER_NAME}" ] && USE_STANDARD_INSTALLER_NAME="OFF"
2929

30-
echo "Platform: ${PLATFORM}, build type: ${BUILD_TYPE}, CI_NAME: $CI_NAME, docker image: ${DOCKER_IMAGE}, docker type: ${DOCKER_TAG}, is archive enabled: ${IS_ARCHIVE_SKIPPED}"
30+
echo "Platform: ${PLATFORM}, build type: ${BUILD_TYPE}, CI_NAME: $CI_NAME, docker image: ${DOCKER_IMAGE}, docker type: ${DOCKER_TAG}, is archive enabled: ${IS_ARCHIVE_SKIPPED}, use ccache: ${USE_CCACHE}, reset ccache: ${RESET_CACHE}"
31+
32+
# clear ccache if neccesery
33+
if [[ "$RESET_CACHE" == '1' ]]; then
34+
echo "Clearing ccache"
35+
rm -rf .ccache || true
36+
rm -rf build/.ccache || true
37+
fi
3138

3239
# Build the package on osx or linux
3340
if [[ "$CI_NAME" == 'osx' || "$CI_NAME" == 'darwin' ]]; then
3441
echo "Start: osx or darwin"
42+
3543
if [[ "$USE_CCACHE" == '1' ]]; then
3644
echo "Using ccache"
37-
38-
# Init ccache
39-
mkdir -p .ccache
40-
cd .ccache
41-
42-
if [[ "$RESET_CACHE" == '1' ]]; then
43-
echo "Clearing ccache"
44-
rm -rf ..?* .[!.]* *
45-
fi
46-
47-
CCACHE_PATH=$PWD
48-
cd ..
49-
cachecommand="-DCMAKE_C_COMPILER_LAUNCHER=ccache ${IS_ARCHIVE_SKIPPED}"
50-
export CCACHE_SLOPPINESS=pch_defines,time_macros && export CCACHE_DIR=${CCACHE_PATH} && export CCACHE_COMPRESS=true && export CCACHE_COMPRESSLEVEL=1 && export CCACHE_MAXSIZE=400M
51-
echo "CCache parameters: ${cachecommand}"
52-
ls -a .ccache
53-
54-
mkdir build || exit 1
55-
cd build
56-
ccache -p
57-
cmake ${cachecommand} -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_INSTALL_PREFIX:PATH=/usr/local ../ || exit 2
58-
make -j $(sysctl -n hw.ncpu) || exit 3
59-
sudo cpack || exit 3
60-
exit 0;
61-
exit 1 || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
45+
BUILD_OPTION=""
6246
else
6347
echo "Not using ccache"
64-
mkdir build || exit 1
65-
cd build
66-
cmake -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_INSTALL_PREFIX:PATH=/usr/local ../ || exit 2
67-
make -j $(sysctl -n hw.ncpu) || exit 3
68-
sudo cpack || exit 3
69-
exit 0;
70-
exit 1 || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
48+
BUILD_OPTION="-DDISABLE_CCACHE_USAGE=ON"
7149
fi
50+
51+
echo "Build option: ${BUILD_OPTION}"
52+
53+
mkdir -p build/.ccache
54+
ls -a build/.ccache
55+
cd build
56+
cmake -DPLATFORM=${PLATFORM} ${BUILD_OPTION} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_INSTALL_PREFIX:PATH=/usr/local ../ || exit 2
57+
make -j $(sysctl -n hw.ncpu) || exit 3
58+
sudo cpack || exit 3
59+
ccache -s -d ./.ccache || true
60+
exit 0;
61+
exit 1 || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
62+
7263
elif [[ $CI_NAME == *"mingw64_nt"* || "$CI_NAME" == 'windows_nt' ]]; then
7364
echo "Start: windows"
7465
echo "Number of cores: $NUMBER_OF_PROCESSORS"
7566

7667
if [[ "$USE_CCACHE" == '1' ]]; then
7768
echo "Using ccache"
78-
79-
mkdir -p .ccache
80-
81-
if [[ "$RESET_CACHE" == '1' ]]; then
82-
echo "Clearing ccache"
83-
pushd .
84-
cd .ccache && rm -rf ..?* .[!.]* *
85-
popd
86-
fi
87-
export CCACHE_SLOPPINESS=pch_defines,time_macros && export CCACHE_DIR=$PWD/.ccache && export CCACHE_NOCOMPRESS=true && export CCACHE_MAXSIZE=600M
69+
BUILD_OPTION="${IS_ARCHIVE_SKIPPED}"
70+
else
71+
echo "Not using ccache"
72+
BUILD_OPTION="-DDISABLE_CCACHE_USAGE=ON ${IS_ARCHIVE_SKIPPED}"
8873
fi
8974

90-
mkdir -p build || exit 1
75+
echo "Build option: ${BUILD_OPTION}"
76+
77+
mkdir -p build/.ccache
78+
9179
cd build
92-
cmake -G "Visual Studio 17 2022" -A x64 -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_GITHUB_ACTION=1 ${IS_ARCHIVE_SKIPPED} ../ || exit 2
80+
cmake -G "Visual Studio 17 2022" ${BUILD_OPTION} -A x64 -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_GITHUB_ACTION=1 ../ || exit 2
81+
./ccache.exe -p || true
9382
cmake --build . --target package --config Release -- -nologo -v:m -maxcpucount || exit 3
83+
./ccache.exe -s || true
9484

95-
if [[ "$USE_CCACHE" == '1' ]]; then
96-
./ccache.exe -s
97-
fi
9885
exit 0;
9986

10087
elif [[ "$CI_NAME" == 'linux' ]]; then
@@ -105,6 +92,20 @@ elif [[ "$CI_NAME" == 'linux' ]]; then
10592

10693
# take ownership of deploy dir
10794
mkdir -p ${CI_BUILD_DIR}/deploy
95+
mkdir -p .ccache
96+
97+
if [[ "$USE_CCACHE" == '1' ]]; then
98+
echo "Using ccache"
99+
BUILD_OPTION="${IS_ARCHIVE_SKIPPED}"
100+
cache_env="export CCACHE_DIR=/.ccache"
101+
ls -a .ccache
102+
else
103+
echo "Not using ccache"
104+
BUILD_OPTION="-DDISABLE_CCACHE_USAGE=ON ${IS_ARCHIVE_SKIPPED}"
105+
cache_env="true"
106+
fi
107+
108+
echo "Build option: ${BUILD_OPTION}, ccache: ${cache_env}"
108109

109110
if [[ "$DOCKER_TAG" == "ArchLinux" ]]; then
110111
echo "Arch Linux detected"
@@ -113,75 +114,27 @@ elif [[ "$CI_NAME" == 'linux' ]]; then
113114
chmod -R a+rw ${CI_BUILD_DIR}/deploy
114115
versionFile=`cat version`
115116
sed -i "s/{VERSION}/${versionFile}/" PKGBUILD
116-
fi
117-
118-
if [[ "$USE_CCACHE" == '1' ]]; then
119-
echo "Using ccache"
120-
121-
mkdir -p .ccache
122-
123-
cachecommand="-DCMAKE_C_COMPILER_LAUNCHER=ccache ${IS_ARCHIVE_SKIPPED}"
124-
125-
if [[ "$RESET_CACHE" == '1' ]]; then
126-
echo "Clearing ccache"
127-
cache_env="export CCACHE_SLOPPINESS=pch_defines,time_macros && export CCACHE_DIR=/.ccache && export CCACHE_NOCOMPRESS=true && export CCACHE_MAXSIZE=600M && cd /.ccache && rm -rf ..?* .[!.]* *"
128-
else
129-
cache_env="export CCACHE_SLOPPINESS=pch_defines,time_macros && export CCACHE_DIR=/.ccache && export CCACHE_NOCOMPRESS=true && export CCACHE_MAXSIZE=600M"
130-
fi
131-
132-
echo "CCache parameters: ${cachecommand}, env: ${cache_env}"
133-
134-
if [[ "$DOCKER_TAG" == "ArchLinux" ]]; then
135-
sed -i "s/{CACHE}/${cachecommand}/" PKGBUILD
136-
echo "Using makepkg"
137-
cat PKGBUILD
138-
chmod -R a+rw ${CI_BUILD_DIR}/.ccache
139-
else
140-
executeCommand="cd build && ( cmake ${cachecommand} -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DDEBIAN_NAME_TAG=${DOCKER_TAG} -DUSE_STANDARD_INSTALLER_NAME=${USE_STANDARD_INSTALLER_NAME} ../ || exit 2 )"
141-
executeCommand+=" && ( make -j $(nproc) package || exit 3 )"
142-
fi
143-
144-
ls -a .ccache
145-
# run docker
146-
docker run --rm \
147-
-v "${CI_BUILD_DIR}/.ccache:/.ccache" \
148-
-v "${CI_BUILD_DIR}/deploy:/deploy" \
149-
-v "${CI_BUILD_DIR}:/source:ro" \
150-
$REGISTRY_URL:$DOCKER_TAG \
151-
/bin/bash -c "${cache_env} && cd / && mkdir -p hyperhdr && cp -r source/. /hyperhdr &&
152-
cd /hyperhdr && mkdir build && (${executeCommand}) &&
153-
(cp /hyperhdr/build/bin/h* /deploy/ 2>/dev/null || : ) &&
154-
(cp /hyperhdr/build/Hyper* /deploy/ 2>/dev/null || : ) &&
155-
(cp /hyperhdr/Hyper*.zst /deploy/ 2>/dev/null || : ) &&
156-
ccache -s &&
157-
exit 0;
158-
exit 1 " || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
159-
ls -a .ccache
117+
sed -i "s/{BUILD_OPTION}/${BUILD_OPTION}/" PKGBUILD
118+
chmod -R a+rw ${CI_BUILD_DIR}/.ccache
160119
else
161-
echo "Not using cache"
162-
163-
if [[ "$DOCKER_TAG" == "ArchLinux" ]]; then
164-
sed -i "s/{CACHE}//" PKGBUILD
165-
echo "Using makepkg"
166-
cat PKGBUILD
167-
else
168-
executeCommand="cd build && ( cmake -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DDEBIAN_NAME_TAG=${DOCKER_TAG} -DUSE_STANDARD_INSTALLER_NAME=${USE_STANDARD_INSTALLER_NAME} ../ || exit 2 )"
169-
executeCommand+=" && ( make -j $(nproc) package || exit 3 )"
170-
fi
171-
172-
# run docker
173-
docker run --rm \
174-
-v "${CI_BUILD_DIR}/deploy:/deploy" \
175-
-v "${CI_BUILD_DIR}:/source:ro" \
176-
$REGISTRY_URL:$DOCKER_TAG \
177-
/bin/bash -c "cd / && mkdir -p hyperhdr && cp -r source/. /hyperhdr &&
178-
cd /hyperhdr && mkdir build && (${executeCommand}) &&
179-
(cp /hyperhdr/build/bin/h* /deploy/ 2>/dev/null || : ) &&
180-
(cp /hyperhdr/build/Hyper* /deploy/ 2>/dev/null || : ) &&
181-
(cp /hyperhdr/Hyper*.zst /deploy/ 2>/dev/null || : ) &&
182-
exit 0;
183-
exit 1 " || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
120+
executeCommand="cd build && ( cmake ${BUILD_OPTION} -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DDEBIAN_NAME_TAG=${DOCKER_TAG} -DUSE_STANDARD_INSTALLER_NAME=${USE_STANDARD_INSTALLER_NAME} ../ || exit 2 )"
121+
executeCommand+=" && ( make -j $(nproc) package || exit 3 )"
184122
fi
123+
124+
# run docker
125+
docker run --rm \
126+
-v "${CI_BUILD_DIR}/.ccache:/.ccache" \
127+
-v "${CI_BUILD_DIR}/deploy:/deploy" \
128+
-v "${CI_BUILD_DIR}:/source:ro" \
129+
$REGISTRY_URL:$DOCKER_TAG \
130+
/bin/bash -c "${cache_env} && cd / && mkdir -p hyperhdr && cp -r source/. /hyperhdr &&
131+
cd /hyperhdr && mkdir build && (${executeCommand}) &&
132+
(cp /hyperhdr/build/bin/h* /deploy/ 2>/dev/null || : ) &&
133+
(cp /hyperhdr/build/Hyper* /deploy/ 2>/dev/null || : ) &&
134+
(cp /hyperhdr/Hyper*.zst /deploy/ 2>/dev/null || : ) &&
135+
(ccache -s || true) &&
136+
exit 0;
137+
exit 1 " || { echo "---> HyperHDR compilation failed! Abort"; exit 5; }
185138

186139
# overwrite file owner to current user
187140
sudo chown -fR $(stat -c "%U:%G" ${CI_BUILD_DIR}/deploy) ${CI_BUILD_DIR}/deploy

.github/workflows/push-master.yml

+7-6
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ name: HyperHDR CI Build
22

33
on:
44
push:
5-
pull_request:
5+
# pull_request:
66

77
env:
88
USE_CACHE: "1"
99
RESET_CACHE: "0"
10-
USE_CODEQL: "1"
10+
USE_CODEQL: "0"
1111
BUILD_ARCHIVES: ${{ startsWith(github.event.ref, 'refs/tags') && 1 || 0 }}
1212

1313
jobs:
@@ -163,14 +163,14 @@ jobs:
163163
if: ( env.USE_CACHE == '1' )
164164
uses: actions/cache@v4
165165
with:
166-
path: .ccache
166+
path: build/.ccache
167167
key: macOS-ccache-${{ matrix.NICE_NAME }}-${{ steps.ccache_cache_timestamp.outputs.timestamp }}
168168
restore-keys: macOS-ccache-${{ matrix.NICE_NAME }}
169169

170170
# Install deps
171171
- name: Install deps
172172
shell: bash
173-
run: brew install -q qt@${{ matrix.QT_VERSION }} xz ccache zstd webp jpeg-turbo || true
173+
run: brew install -q qt@${{ matrix.QT_VERSION }} xz ccache zstd webp jpeg-turbo flatbuffers pkg-config || true
174174

175175
# Set env
176176
- name: Set QT5 env
@@ -248,7 +248,7 @@ jobs:
248248
if: ( env.USE_CACHE == '1' )
249249
uses: actions/cache@v4
250250
with:
251-
path: .ccache
251+
path: build/.ccache
252252
key: ${{ runner.os }}-ccache-${{ steps.ccache_cache_timestamp.outputs.timestamp }}
253253
restore-keys: ${{ runner.os }}-ccache
254254

@@ -305,7 +305,6 @@ jobs:
305305
analyze:
306306
name: Analyze (CodeQL)
307307
runs-on: ubuntu-latest
308-
if: ( true )
309308
permissions:
310309
actions: read
311310
contents: read
@@ -319,11 +318,13 @@ jobs:
319318
steps:
320319
- name: Checkout repository
321320
uses: actions/checkout@v4
321+
if: ( env.USE_CODEQL == '1' )
322322
with:
323323
submodules: true
324324

325325
- name: Run composite CodeQL job for '${{matrix.language}}' language
326326
uses: ./.github/actions/codeql
327+
if: ( env.USE_CODEQL == '1' )
327328
with:
328329
language: ${{matrix.language}}
329330

0 commit comments

Comments
 (0)