From 91d6211b00326dbee89a165c6c5a145410bb7528 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 12:29:19 +0100 Subject: [PATCH 01/56] first github actions experiment --- .github/workflows/main.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 000000000..6c083056a --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,17 @@ +name: CI + +on: [push] + +jobs: + build: + + runs-on: macos-latest + + steps: + - uses: actions/checkout@v1 + - name: Run a one-line script + run: echo Hello, world! + - name: Run a multi-line script + run: | + echo Add other actions to build, + echo test, and deploy your project. From ffb9ddc286e71242e7dfa5a210d3446a686e10c9 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 12:45:39 +0100 Subject: [PATCH 02/56] ci macos: install dependencies --- .github/workflows/main.yml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6c083056a..17ecc4bd9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,6 +1,7 @@ name: CI -on: [push] +on: + - push jobs: build: @@ -9,9 +10,5 @@ jobs: steps: - uses: actions/checkout@v1 - - name: Run a one-line script - run: echo Hello, world! - - name: Run a multi-line script - run: | - echo Add other actions to build, - echo test, and deploy your project. + - name: Install dependencies + run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp From f7e826359e44346ee7135a752628794286b806bb Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:14:50 +0100 Subject: [PATCH 03/56] ci macos: first build attempt --- .github/workflows/main.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 17ecc4bd9..4b53fc69b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -10,5 +10,18 @@ jobs: steps: - uses: actions/checkout@v1 + - name: test getting the git branch of the triggering ref + run: echo ${GITHUB_REF##*/} - name: Install dependencies run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp + - name: cmake + env: + CMAKE_CXX_STANDARD: 11 + run: | + cmake \ + -DCMAKE_BUILD_TYPE="release" \ + -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ + -DPROC_TARGET_NUMBER="2" \ + -DBUILD_BUNDLE="ON" \ + -DWITH_LTO="OFF" \ + -DLENSFUNDBDIR="./share/lensfun" From 0a492de25fc1a3c7122fb285e4941258cac963d6 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:17:57 +0100 Subject: [PATCH 04/56] ci macos: do not install already installed libs --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4b53fc69b..39d1835fa 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,7 +13,7 @@ jobs: - name: test getting the git branch of the triggering ref run: echo ${GITHUB_REF##*/} - name: Install dependencies - run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp + run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp - name: cmake env: CMAKE_CXX_STANDARD: 11 From caeeeaec3954152c80c9538c7625386fb8986d91 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:31:54 +0100 Subject: [PATCH 05/56] ci macos: remove default option --- .github/workflows/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 39d1835fa..b5c00ebdc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,6 +22,5 @@ jobs: -DCMAKE_BUILD_TYPE="release" \ -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ - -DBUILD_BUNDLE="ON" \ -DWITH_LTO="OFF" \ -DLENSFUNDBDIR="./share/lensfun" From 370044fbfed2cac13fee031524372ce0d1280b73 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:32:41 +0100 Subject: [PATCH 06/56] ci macos: point cmake to source directory --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b5c00ebdc..5de9ff6fc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -23,4 +23,5 @@ jobs: -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ -DWITH_LTO="OFF" \ - -DLENSFUNDBDIR="./share/lensfun" + -DLENSFUNDBDIR="./share/lensfun" \ + . From 3eff4ae873714486dacd8874c738f13f3571008e Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:37:04 +0100 Subject: [PATCH 07/56] ci macos: remove test lines --- .github/workflows/main.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5de9ff6fc..f880f9dad 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -10,8 +10,6 @@ jobs: steps: - uses: actions/checkout@v1 - - name: test getting the git branch of the triggering ref - run: echo ${GITHUB_REF##*/} - name: Install dependencies run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp - name: cmake From d404072c32368b94ec0fb5aaee6b1ac1e471a33f Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:58:15 +0100 Subject: [PATCH 08/56] ci macos: whitespace fix --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f880f9dad..fc86e3f31 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ jobs: CMAKE_CXX_STANDARD: 11 run: | cmake \ - -DCMAKE_BUILD_TYPE="release" \ + -DCMAKE_BUILD_TYPE="release" \ -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ -DWITH_LTO="OFF" \ From 0b725ab252016c09df2311aa0503b4024b05f469 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 13:58:46 +0100 Subject: [PATCH 09/56] ci macos: link keg-only libs --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fc86e3f31..a1047150e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,4 +22,6 @@ jobs: -DPROC_TARGET_NUMBER="2" \ -DWITH_LTO="OFF" \ -DLENSFUNDBDIR="./share/lensfun" \ + -DLDFLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ + -DCXXFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include" \ . From 62a71be567427a87f3bc0e650aad4d92a2d70d26 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:09:50 +0100 Subject: [PATCH 10/56] ci macos: set pkg config path --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a1047150e..6ae59b34a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,6 +15,7 @@ jobs: - name: cmake env: CMAKE_CXX_STANDARD: 11 + PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig run: | cmake \ -DCMAKE_BUILD_TYPE="release" \ From d17e1f303afc334d3bc041e086e094446e311507 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:34:19 +0100 Subject: [PATCH 11/56] ci macos: move to out-of-source build --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6ae59b34a..892da1ed8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,6 +12,8 @@ jobs: - uses: actions/checkout@v1 - name: Install dependencies run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp + - name: create and move to build directory + run: mkdir build && cd build - name: cmake env: CMAKE_CXX_STANDARD: 11 @@ -25,4 +27,4 @@ jobs: -DLENSFUNDBDIR="./share/lensfun" \ -DLDFLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ -DCXXFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include" \ - . + .. From b1c6e20ce4c217903b245e530b578910391c8b83 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:38:09 +0100 Subject: [PATCH 12/56] ci macos: verbose make file --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 892da1ed8..66ccf7b32 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -21,6 +21,7 @@ jobs: run: | cmake \ -DCMAKE_BUILD_TYPE="release" \ + -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ -DWITH_LTO="OFF" \ From aafaf33d0766cc9a33404f1b9a19fa545617cced Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:52:03 +0100 Subject: [PATCH 13/56] ci macos: add proc_label --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 66ccf7b32..11eedf096 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -24,6 +24,7 @@ jobs: -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ + -DPROC_LABEL="generic processor" \ -DWITH_LTO="OFF" \ -DLENSFUNDBDIR="./share/lensfun" \ -DLDFLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ From 429f6bd5b3b95f2a2147757d7f1b8e83d9863eb7 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:52:36 +0100 Subject: [PATCH 14/56] ci macos: add openmp --- .github/workflows/main.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 11eedf096..83914af61 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -27,6 +27,12 @@ jobs: -DPROC_LABEL="generic processor" \ -DWITH_LTO="OFF" \ -DLENSFUNDBDIR="./share/lensfun" \ - -DLDFLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ - -DCXXFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include" \ + -DOpenMP_C_FLAGS=-fopenmp=libomp \ + -DOpenMP_CXX_FLAGS=-fopenmp=libomp \ + -DOpenMP_C_LIB_NAMES="libomp" \ + -DOpenMP_CXX_LIB_NAMES="libomp" \ + -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \ + -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ + -DOpenMP_CXX_LIB_NAMES="libomp" \ + -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ .. From 4a6c6041d921bc621424904a9f7f0112d3f99730 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:55:23 +0100 Subject: [PATCH 15/56] ci macos: add make commands --- .github/workflows/main.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 83914af61..d2831984b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -36,3 +36,6 @@ jobs: -DOpenMP_CXX_LIB_NAMES="libomp" \ -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ .. + make --jobs 8 + make install + make macosx_bundle From 3ab43669e90f0f2063c45b1c5d19676bae662e4a Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 14:57:33 +0100 Subject: [PATCH 16/56] ci macos: add minor version number --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d2831984b..7cf7f6871 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,11 +18,13 @@ jobs: env: CMAKE_CXX_STANDARD: 11 PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig + RAW_THERAPEE_MAJOR: '5' + RAW_THERAPEE_MINOR: '7' run: | cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ - -DCACHE_NAME_SUFFIX="5-${GITHUB_REF##*/}" \ + -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ -DWITH_LTO="OFF" \ From c4869d08d4a124057c513a13cd6eaf4b1f6d65e9 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 16:16:32 +0100 Subject: [PATCH 17/56] ci macos: fix out-of-source build --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 7cf7f6871..fa9bb8be5 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,8 +12,6 @@ jobs: - uses: actions/checkout@v1 - name: Install dependencies run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp - - name: create and move to build directory - run: mkdir build && cd build - name: cmake env: CMAKE_CXX_STANDARD: 11 @@ -21,6 +19,7 @@ jobs: RAW_THERAPEE_MAJOR: '5' RAW_THERAPEE_MINOR: '7' run: | + mkdir build && cd build cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ From 4aad850267c9fd057dad14218a2c143ba6c1de7a Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 16:16:49 +0100 Subject: [PATCH 18/56] ci macos: attempt to fix linking issues --- .github/workflows/main.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fa9bb8be5..06cb73145 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,11 +18,13 @@ jobs: PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig RAW_THERAPEE_MAJOR: '5' RAW_THERAPEE_MINOR: '7' + C_FLAGS: -Xpreprocessor -fopenmp /usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | mkdir build && cd build cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ + -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${GITHUB_REF##*/}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ @@ -32,10 +34,9 @@ jobs: -DOpenMP_CXX_FLAGS=-fopenmp=libomp \ -DOpenMP_C_LIB_NAMES="libomp" \ -DOpenMP_CXX_LIB_NAMES="libomp" \ - -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \ - -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ - -DOpenMP_CXX_LIB_NAMES="libomp" \ - -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ + -DOpenMP_libomp_LIBRARY="/usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib" \ + -DOpenMP_C_FLAGS="${C_FLAGS}" \ + -DOpenMP_CXX_FLAGS="${C_FLAGS}" \ .. make --jobs 8 make install From edfadf4ff20980efe6d03490b743cd5c30005bb8 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 16:38:07 +0100 Subject: [PATCH 19/56] ci macos: fix permission denieds --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 06cb73145..e7f97f410 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -40,4 +40,5 @@ jobs: .. make --jobs 8 make install - make macosx_bundle + sudo make macosx_bundle + From dbf2c3fe2d0a000e687dd8017f18f8b88c721b91 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 16:44:28 +0100 Subject: [PATCH 20/56] ci macos: fix branch ref --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e7f97f410..31fc77522 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -20,12 +20,13 @@ jobs: RAW_THERAPEE_MINOR: '7' C_FLAGS: -Xpreprocessor -fopenmp /usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | + REF=${GITHUB_REF##*/} mkdir build && cd build cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ - -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${GITHUB_REF##*/}" \ + -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${REF}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ -DWITH_LTO="OFF" \ From 2179b74c37a25726dcd81a745c0cbeb3552a9f58 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 17:09:32 +0100 Subject: [PATCH 21/56] ci macos: distinctively name macos build --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 31fc77522..0fdc726a8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: CI +name: Mac OS build on: - push From b41cf71aace0ccbfd013e149992feb7bf6c609bf Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 17:34:37 +0100 Subject: [PATCH 22/56] ci macos: upload dmg artifact --- .github/workflows/main.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0fdc726a8..e288fda9b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,7 +1,7 @@ name: Mac OS build on: - - push + push jobs: build: @@ -42,4 +42,11 @@ jobs: make --jobs 8 make install sudo make macosx_bundle - + + ARTIFACT=$(ls | grep .dmg) + echo "Writing -${ARTIFACT} to the ARTIFACT environment variable for use in upload-artifact step" + echo "::set-env name=ARTIFACT::${ARTIFACT}" + - uses: actions/upload-artifact@v1 + with: + name: ${{env.ARTIFACT}} + path: build/${{env.ARTIFACT}} From 03d2393af39bb136155a75c0a924648dc4892065 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 18:09:56 +0100 Subject: [PATCH 23/56] ci macos: remove empty line in run statement --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e288fda9b..995b1c210 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -42,9 +42,8 @@ jobs: make --jobs 8 make install sudo make macosx_bundle - ARTIFACT=$(ls | grep .dmg) - echo "Writing -${ARTIFACT} to the ARTIFACT environment variable for use in upload-artifact step" + echo "===== Writing ${ARTIFACT} to the ARTIFACT environment variable for use in upload-artifact step =====" echo "::set-env name=ARTIFACT::${ARTIFACT}" - uses: actions/upload-artifact@v1 with: From 59106b89a17d8d7be4913503487fdb3811273c17 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sat, 7 Dec 2019 19:44:58 +0100 Subject: [PATCH 24/56] ci macos: fix artifact upload --- .github/workflows/main.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 995b1c210..f386bdda7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -42,10 +42,11 @@ jobs: make --jobs 8 make install sudo make macosx_bundle - ARTIFACT=$(ls | grep .dmg) - echo "===== Writing ${ARTIFACT} to the ARTIFACT environment variable for use in upload-artifact step =====" - echo "::set-env name=ARTIFACT::${ARTIFACT}" + ARTIFACT=$(ls | grep RawTherapee*.zip) + echo "=== artifact: ${ARTIFACT}" + echo "::set-env name=ARTIFACT_PATH::${GITHUB_WORKSPACE}/build/${ARTIFACT}" + echo "::set-env name=ARTIFACT_FILE::${ARTIFACT}" - uses: actions/upload-artifact@v1 with: - name: ${{env.ARTIFACT}} - path: build/${{env.ARTIFACT}} + name: ${{env.ARTIFACT_FILE}} + path: ${{env.ARTIFACT_PATH}} From 64ce4d6bb9fcf721f613fed2d1586747ed31a6e9 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sun, 8 Dec 2019 21:56:32 +0100 Subject: [PATCH 25/56] macos: patch libiconv 1.16 --- tools/osx/libiconv_1.16_rt.patch | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tools/osx/libiconv_1.16_rt.patch diff --git a/tools/osx/libiconv_1.16_rt.patch b/tools/osx/libiconv_1.16_rt.patch new file mode 100644 index 000000000..470f7780c --- /dev/null +++ b/tools/osx/libiconv_1.16_rt.patch @@ -0,0 +1,31 @@ +diff --git a/lib/iconv.c b/lib/iconv.c +index b7a04f8..41c5896 100644 +--- a/lib/iconv.c ++++ b/lib/iconv.c +@@ -610,5 +610,26 @@ strong_alias (libiconv_open, iconv_open) + strong_alias (libiconv, iconv) + strong_alias (libiconv_close, iconv_close) + #endif ++ ++#undef iconv_open ++#undef iconv ++#undef iconv_close ++ ++LIBICONV_DLL_EXPORTED iconv_t iconv_open (const char* tocode, const char* fromcode) ++{ ++ return libiconv_open(tocode, fromcode); ++} ++ ++LIBICONV_DLL_EXPORTED size_t iconv (iconv_t icd, ++ ICONV_CONST char * * inbuf, size_t *inbytesleft, ++ char * * outbuf, size_t *outbytesleft) ++{ ++ return libiconv(icd, inbuf, inbytesleft, outbuf, outbytesleft); ++} ++ ++LIBICONV_DLL_EXPORTED int iconv_close (iconv_t icd) ++{ ++ return libiconv_close(icd); ++} + + #endif From 6d6fbef216693259b7188a82e697192046361605 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sun, 8 Dec 2019 22:22:41 +0100 Subject: [PATCH 26/56] ci macos: patch libiconv --- .github/workflows/main.yml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f386bdda7..4cb80a2fe 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,6 +12,20 @@ jobs: - uses: actions/checkout@v1 - name: Install dependencies run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp + - name: patch libiconv + run: | + mkdir libiconv && cd libiconv + wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz + tar xf libiconv-1.16.tar.gz + cd libiconv-1.16 + patch -p1 < "${GITHUB_WORKSPACE}/tools/osx/libiconv_1.16_rt.patch" + mkdir build && cd build + destDir="$(pwd)" + ../configure --prefix=/opt/local --disable-static 'CFLAGS=-arch x86_64 -mmacosx-version-min=10.9' 'LDFLAGS=-arch x86_64 -mmacosx-version-min=10.9' CXXFLAGS="-arch x86_64 -mmacosx-version-min=10.9" + make --jobs 2 + make DESTDIR="${destDir}" install + sudo cp opt/local/lib/libiconv.2.dylib /usr/lib/libiconv.2.dylib + cd - - name: cmake env: CMAKE_CXX_STANDARD: 11 @@ -39,7 +53,7 @@ jobs: -DOpenMP_C_FLAGS="${C_FLAGS}" \ -DOpenMP_CXX_FLAGS="${C_FLAGS}" \ .. - make --jobs 8 + make --jobs 2 make install sudo make macosx_bundle ARTIFACT=$(ls | grep RawTherapee*.zip) From 7d403407e5d79cd6afd9c90cdc116eaf4dacdcd4 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Sun, 8 Dec 2019 23:18:35 +0100 Subject: [PATCH 27/56] ci macos: install and use entire patched libiconv --- .github/workflows/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4cb80a2fe..950e7587d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -24,7 +24,7 @@ jobs: ../configure --prefix=/opt/local --disable-static 'CFLAGS=-arch x86_64 -mmacosx-version-min=10.9' 'LDFLAGS=-arch x86_64 -mmacosx-version-min=10.9' CXXFLAGS="-arch x86_64 -mmacosx-version-min=10.9" make --jobs 2 make DESTDIR="${destDir}" install - sudo cp opt/local/lib/libiconv.2.dylib /usr/lib/libiconv.2.dylib + sudo mv opt/local /usr/local/opt/libiconv cd - - name: cmake env: @@ -32,14 +32,14 @@ jobs: PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig RAW_THERAPEE_MAJOR: '5' RAW_THERAPEE_MINOR: '7' - C_FLAGS: -Xpreprocessor -fopenmp /usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include + C_FLAGS: -Xpreprocessor -fopenmp /usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | REF=${GITHUB_REF##*/} mkdir build && cd build cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ - -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ + -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${REF}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ From 72f261a1b0270aebadf06bdb4d292cdca59b7d18 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Mon, 9 Dec 2019 15:26:26 +0100 Subject: [PATCH 28/56] Print /usr/local/lib contents & link it before other libs --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 950e7587d..cdd0033f2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,6 +26,8 @@ jobs: make DESTDIR="${destDir}" install sudo mv opt/local /usr/local/opt/libiconv cd - + - name: print /usr/local/lib contents + run: ls -al /usr/local/lib - name: cmake env: CMAKE_CXX_STANDARD: 11 @@ -39,7 +41,7 @@ jobs: cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ - -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ + -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/lib -L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${REF}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ From aa0a1a870f219e18c760cadd301db38eb46f478f Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Mon, 9 Dec 2019 23:25:12 +0100 Subject: [PATCH 29/56] ci macos: remove unneccesary cd statement --- .github/workflows/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index cdd0033f2..bdedf5432 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,7 +25,6 @@ jobs: make --jobs 2 make DESTDIR="${destDir}" install sudo mv opt/local /usr/local/opt/libiconv - cd - - name: print /usr/local/lib contents run: ls -al /usr/local/lib - name: cmake From 62da9d434a3abc49f0c19090cdc7607aa381439a Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Mon, 9 Dec 2019 23:25:50 +0100 Subject: [PATCH 30/56] ci macos: change order of linker statements --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index bdedf5432..4bc769e3f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -40,7 +40,7 @@ jobs: cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ - -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/lib -L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib" \ + -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib" \ -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${REF}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ From 0e662ccb4a68ca4e46397bca299892bdd9257406 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Mon, 9 Dec 2019 23:26:28 +0100 Subject: [PATCH 31/56] ci macos: configure AR and RANLIB libraries for cmake --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4bc769e3f..b90fedef1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -53,6 +53,8 @@ jobs: -DOpenMP_libomp_LIBRARY="/usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib" \ -DOpenMP_C_FLAGS="${C_FLAGS}" \ -DOpenMP_CXX_FLAGS="${C_FLAGS}" \ + -DCMAKE_AR="/usr/local/opt/llvm/bin/llvm-ar" \ + -DCMAKE_RANLIB="/usr/local/opt/llvm/bin/llvm-ranlib" \ .. make --jobs 2 make install From d5b8c9658ddcd183f1fada371929a05f07d4ad0b Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Mon, 9 Dec 2019 23:34:23 +0100 Subject: [PATCH 32/56] ci macos: use symlink reference for libomp --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b90fedef1..dad60b0db 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -33,7 +33,7 @@ jobs: PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig RAW_THERAPEE_MAJOR: '5' RAW_THERAPEE_MINOR: '7' - C_FLAGS: -Xpreprocessor -fopenmp /usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include + C_FLAGS: -Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | REF=${GITHUB_REF##*/} mkdir build && cd build @@ -50,7 +50,7 @@ jobs: -DOpenMP_CXX_FLAGS=-fopenmp=libomp \ -DOpenMP_C_LIB_NAMES="libomp" \ -DOpenMP_CXX_LIB_NAMES="libomp" \ - -DOpenMP_libomp_LIBRARY="/usr/local/Cellar/libomp/9.0.0/lib/libomp.dylib" \ + -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \ -DOpenMP_C_FLAGS="${C_FLAGS}" \ -DOpenMP_CXX_FLAGS="${C_FLAGS}" \ -DCMAKE_AR="/usr/local/opt/llvm/bin/llvm-ar" \ From 0a4f140aadfa9e1e2e90df68180cf812dc4d015e Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 00:05:08 +0100 Subject: [PATCH 33/56] ci macos: fix path for gdk-pixbuf-2.0 --- tools/osx/macosx_bundle.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 2501e936b..d3da8c7b7 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -117,7 +117,7 @@ msg "Copying dependencies from ${GTK_PREFIX}:" CheckLink "${EXECUTABLE}" msg "Copying library modules from ${GTK_PREFIX}:" -ditto --arch "${arch}" {"${GTK_PREFIX}/lib","${LIB}"}/gdk-pixbuf-2.0 +ditto --arch "${arch}" {"/usr/local/Cellar/gdk-pixbuf/2*/lib","${LIB}"}/gdk-pixbuf-2.0 ditto --arch "${arch}" {"${GTK_PREFIX}/lib","${LIB}"}/gtk-3.0 msg "Removing static libraries and cache files:" From 7eb2366e98d17a853a301e32de7691a20b292970 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 00:36:32 +0100 Subject: [PATCH 34/56] ci macos: link gdk-pixbuf from usr/local/opt --- .github/workflows/main.yml | 4 ++-- tools/osx/macosx_bundle.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dad60b0db..7ff4c4352 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -33,14 +33,14 @@ jobs: PKG_CONFIG_PATH: /usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig RAW_THERAPEE_MAJOR: '5' RAW_THERAPEE_MINOR: '7' - C_FLAGS: -Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include + C_FLAGS: -Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/gdk-pixbuf/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | REF=${GITHUB_REF##*/} mkdir build && cd build cmake \ -DCMAKE_BUILD_TYPE="release" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ - -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib" \ + -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -L/usr/local/opt/gdk-pixbuf/lib -L/usr/local/opt/libiconv/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/libxml2/lib -L/usr/local/opt/expat/lib" \ -DCACHE_NAME_SUFFIX="${RAW_THERAPEE_MAJOR}.${RAW_THERAPEE_MINOR}-${REF}" \ -DPROC_TARGET_NUMBER="2" \ -DPROC_LABEL="generic processor" \ diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index d3da8c7b7..e697ec766 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -117,7 +117,7 @@ msg "Copying dependencies from ${GTK_PREFIX}:" CheckLink "${EXECUTABLE}" msg "Copying library modules from ${GTK_PREFIX}:" -ditto --arch "${arch}" {"/usr/local/Cellar/gdk-pixbuf/2*/lib","${LIB}"}/gdk-pixbuf-2.0 +ditto --arch "${arch}" {"/usr/local/opt/gdk-pixbuf/lib","${LIB}"}/gdk-pixbuf-2.0 ditto --arch "${arch}" {"${GTK_PREFIX}/lib","${LIB}"}/gtk-3.0 msg "Removing static libraries and cache files:" From 351fe7e2f11ca1da45edac219dd9e92e223e51e4 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 19:39:28 +0100 Subject: [PATCH 35/56] ci macos: fix for gdk-pixbuf not being within gtk+3 (on brew) --- tools/osx/macosx_bundle.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index e697ec766..44cacef88 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -99,6 +99,7 @@ MACOS="${CONTENTS}/MacOS" LIB="${CONTENTS}/Frameworks" ETC="${RESOURCES}/etc" EXECUTABLE="${MACOS}/rawtherapee" +GDK_PREFIX="/usr/local/opt/gdk-pixbuf" msg "Removing old files:" rm -rf "${APP}" "${PROJECT_NAME}_*.dmg" "*zip" @@ -117,7 +118,7 @@ msg "Copying dependencies from ${GTK_PREFIX}:" CheckLink "${EXECUTABLE}" msg "Copying library modules from ${GTK_PREFIX}:" -ditto --arch "${arch}" {"/usr/local/opt/gdk-pixbuf/lib","${LIB}"}/gdk-pixbuf-2.0 +ditto --arch "${arch}" {"${GDK_PREFIX}/lib","${LIB}"}/gdk-pixbuf-2.0 ditto --arch "${arch}" {"${GTK_PREFIX}/lib","${LIB}"}/gtk-3.0 msg "Removing static libraries and cache files:" @@ -132,8 +133,8 @@ mv "${LIB}"/gtk-3.0/3*/immodules/*.so "${LIB}" rm -r "${LIB}"/gtk-3.0 rm -r "${LIB}"/gdk-pixbuf-2.0 -"${GTK_PREFIX}/bin/gdk-pixbuf-query-loaders" "${LIB}"/libpix*.so > "${ETC}/gtk-3.0/gdk-pixbuf.loaders" -"${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so,libprint*.so} > "${ETC}/gtk-3.0/gtk.immodules" +"${GDK_PREFIX}/bin/gdk-pixbuf-query-loaders" "${LIB}"/libpix*.so > "${ETC}/gtk-3.0/gdk-pixbuf.loaders" +"${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so,libprint*.so} > "${ETC}/gtk-3.0/gtk.immodules" sed -i "" -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}/gtk-3.0/gdk-pixbuf.loaders" "${ETC}/gtk-3.0/gtk.immodules" ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/glib-2.0/schemas From fa2e8e63545e22e2ee829841058a76e910a8ba1c Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 19:40:27 +0100 Subject: [PATCH 36/56] ci macos: many fixes for library locations (homebrew) --- tools/osx/macosx_bundle.sh | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 44cacef88..fd3a84c14 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -137,43 +137,43 @@ rm -r "${LIB}"/gdk-pixbuf-2.0 "${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so,libprint*.so} > "${ETC}/gtk-3.0/gtk.immodules" sed -i "" -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}/gtk-3.0/gdk-pixbuf.loaders" "${ETC}/gtk-3.0/gtk.immodules" -ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/glib-2.0/schemas -"${GTK_PREFIX}/bin/glib-compile-schemas" "${RESOURCES}/share/glib-2.0/schemas" +ditto {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas +"/usr/local/bin/glib-compile-schemas" "${RESOURCES}/share/glib-2.0/schemas" msg "Copying shared files from ${GTK_PREFIX}:" -ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/mime +ditto {"/usr/local","${RESOURCES}"}/share/mime # GTK3 themes -ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/themes/Mac/gtk-3.0/gtk-keys.css -ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css +ditto {"/usr/local","${RESOURCES}"}/share/themes/Mac/gtk-3.0/gtk-keys.css +ditto {"/usr/local","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css # Adwaita icons iconfolders=("16x16/actions" "16x16/devices" "16x16/mimetypes" "16x16/places" "16x16/status" "48x48/devices") for f in "${iconfolders[@]}"; do - ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/icons/Adwaita/"$f" + ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/"$f" done -ditto {"${GTK_PREFIX}","${RESOURCES}"}/share/icons/Adwaita/index.theme -"${GTK_PREFIX}/bin/gtk-update-icon-cache-3.0" "${RESOURCES}/share/icons/Adwaita" +ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/index.theme +"/usr/local/bin/gtk-update-icon-cache" "${RESOURCES}/share/icons/Adwaita" # Copy libjpeg-turbo into the app bundle -cp /opt/local/lib/libjpeg.62.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libjpeg.*.dylib "${RESOURCES}/../Frameworks" -# Copy libexpat into the app bundle -cp /opt/local/lib/libexpat.1.dylib "${RESOURCES}/../Frameworks" +# Copy libexpat into the app bundle (which is keg-only) +cp /usr/local/Cellar/expat/*/lib/libexpat.1.dylib "${RESOURCES}/../Frameworks" # Copy libz into the app bundle -cp /opt/local/lib/libz.1.dylib "${RESOURCES}/../Frameworks" +cp /usr/lib/libz.1.dylib "${RESOURCES}/../Frameworks" # Copy libtiff into the app bundle -cp /opt/local/lib/libtiff.5.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libtiff.5.dylib "${RESOURCES}/../Frameworks" # Copy the Lensfun database into the app bundle mkdir -p "${RESOURCES}/share/lensfun" -cp /opt/local/share/lensfun/version_2/* "${RESOURCES}/share/lensfun" +cp /usr/local/share/lensfun/version_2/* "${RESOURCES}/share/lensfun" # Copy liblensfun to Frameworks -cp /opt/local/lib/liblensfun.2.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/liblensfun.2.dylib "${RESOURCES}/../Frameworks" # Copy libomp to Frameworks -cp /opt/local/lib/libomp.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libomp.dylib "${RESOURCES}/../Frameworks" # Install names find -E "${CONTENTS}" -type f -regex '.*/(rawtherapee-cli|rawtherapee|.*\.(dylib|so))' | while read -r x; do From 56169fb95d9129d98bdd693d2fda7a4d4e5cd805 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 20:10:27 +0100 Subject: [PATCH 37/56] ci macos: cp resources from where they actually are --- tools/osx/macosx_bundle.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index fd3a84c14..9236f8fac 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -112,7 +112,7 @@ install -d "${RESOURCES}" \ msg "Copying release files:" ditto "${CMAKE_BUILD_TYPE}/MacOS" "${MACOS}" -ditto "${CMAKE_BUILD_TYPE}/Resources" "${RESOURCES}" +ditto "Resources" "${RESOURCES}" msg "Copying dependencies from ${GTK_PREFIX}:" CheckLink "${EXECUTABLE}" From f463cf8085fb37cfe8f4091d7e963668710f2adb Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 21:18:48 +0100 Subject: [PATCH 38/56] ci macos: fix, libprint .so files are now also in target LIB --- tools/osx/macosx_bundle.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 9236f8fac..267d20f0c 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -130,6 +130,7 @@ install -d "${ETC}/gtk-3.0" # Make Frameworks folder flat mv "${LIB}"/gdk-pixbuf-2.0/2*/loaders/*.so "${LIB}" mv "${LIB}"/gtk-3.0/3*/immodules/*.so "${LIB}" +mv "${LIB}"/gtk-3.0/3*/printbackends/*.so "${LIB}" rm -r "${LIB}"/gtk-3.0 rm -r "${LIB}"/gdk-pixbuf-2.0 From aa6140198b6f619cc2dc259f897b2079b6f2d06b Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 21:21:24 +0100 Subject: [PATCH 39/56] ci macos: simplify frameworks path --- tools/osx/macosx_bundle.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 267d20f0c..70bbf6f7d 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -155,26 +155,26 @@ ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/index.theme "/usr/local/bin/gtk-update-icon-cache" "${RESOURCES}/share/icons/Adwaita" # Copy libjpeg-turbo into the app bundle -cp /usr/local/lib/libjpeg.*.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libjpeg.*.dylib "${CONTENTS}/Frameworks" # Copy libexpat into the app bundle (which is keg-only) -cp /usr/local/Cellar/expat/*/lib/libexpat.1.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/Cellar/expat/*/lib/libexpat.1.dylib "${CONTENTS}/Frameworks" # Copy libz into the app bundle -cp /usr/lib/libz.1.dylib "${RESOURCES}/../Frameworks" +cp /usr/lib/libz.1.dylib "${CONTENTS}/Frameworks" # Copy libtiff into the app bundle -cp /usr/local/lib/libtiff.5.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libtiff.5.dylib "${CONTENTS}/Frameworks" # Copy the Lensfun database into the app bundle mkdir -p "${RESOURCES}/share/lensfun" cp /usr/local/share/lensfun/version_2/* "${RESOURCES}/share/lensfun" # Copy liblensfun to Frameworks -cp /usr/local/lib/liblensfun.2.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/liblensfun.2.dylib "${CONTENTS}/Frameworks" # Copy libomp to Frameworks -cp /usr/local/lib/libomp.dylib "${RESOURCES}/../Frameworks" +cp /usr/local/lib/libomp.dylib "${CONTENTS}/Frameworks" # Install names find -E "${CONTENTS}" -type f -regex '.*/(rawtherapee-cli|rawtherapee|.*\.(dylib|so))' | while read -r x; do From 5298f95cbdf4ef3c375963986157f4a76a9c85f1 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 21:30:05 +0100 Subject: [PATCH 40/56] ci macos: follow symlinked files while copying --- tools/osx/macosx_bundle.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 70bbf6f7d..2b008fbf5 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -138,7 +138,8 @@ rm -r "${LIB}"/gdk-pixbuf-2.0 "${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so,libprint*.so} > "${ETC}/gtk-3.0/gtk.immodules" sed -i "" -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}/gtk-3.0/gdk-pixbuf.loaders" "${ETC}/gtk-3.0/gtk.immodules" -ditto {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas +mkdir -p ${RESOURCES}/share/glib-2.0 +cp -pRL {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas "/usr/local/bin/glib-compile-schemas" "${RESOURCES}/share/glib-2.0/schemas" msg "Copying shared files from ${GTK_PREFIX}:" From bff973eef83adca82fbe4fcac6c6a4b9aaa1e9bc Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 21:56:36 +0100 Subject: [PATCH 41/56] ci macos: debug printing for mime copy action --- tools/osx/macosx_bundle.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 2b008fbf5..d2fefc7ac 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -143,7 +143,10 @@ cp -pRL {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas "/usr/local/bin/glib-compile-schemas" "${RESOURCES}/share/glib-2.0/schemas" msg "Copying shared files from ${GTK_PREFIX}:" +set -x +find /usr/local -name mime ditto {"/usr/local","${RESOURCES}"}/share/mime +set +x # GTK3 themes ditto {"/usr/local","${RESOURCES}"}/share/themes/Mac/gtk-3.0/gtk-keys.css ditto {"/usr/local","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css From f6f9da10cc550b1ded3fc66ecca9d53ec59c109c Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 23:40:22 +0100 Subject: [PATCH 42/56] ci macos: do not include libprint to avoid error --- tools/osx/macosx_bundle.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index d2fefc7ac..31233ef38 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -130,12 +130,14 @@ install -d "${ETC}/gtk-3.0" # Make Frameworks folder flat mv "${LIB}"/gdk-pixbuf-2.0/2*/loaders/*.so "${LIB}" mv "${LIB}"/gtk-3.0/3*/immodules/*.so "${LIB}" -mv "${LIB}"/gtk-3.0/3*/printbackends/*.so "${LIB}" +# the print*.so lead to errors when running gtk-query-immodules-3.0, just seeing what the app does without, since they are not in immodules +# and including them leads to errors and a completely empty gtk.immodules file +# mv "${LIB}"/gtk-3.0/3*/printbackends/*.so "${LIB}" rm -r "${LIB}"/gtk-3.0 rm -r "${LIB}"/gdk-pixbuf-2.0 "${GDK_PREFIX}/bin/gdk-pixbuf-query-loaders" "${LIB}"/libpix*.so > "${ETC}/gtk-3.0/gdk-pixbuf.loaders" -"${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so,libprint*.so} > "${ETC}/gtk-3.0/gtk.immodules" +"${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so} > "${ETC}/gtk-3.0/gtk.immodules" sed -i "" -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}/gtk-3.0/gdk-pixbuf.loaders" "${ETC}/gtk-3.0/gtk.immodules" mkdir -p ${RESOURCES}/share/glib-2.0 From ed05d156126a4c36416812732a253a0741c58ffd Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Tue, 10 Dec 2019 23:40:58 +0100 Subject: [PATCH 43/56] ci macos: follow symlink files in copy --- tools/osx/macosx_bundle.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 31233ef38..4a0dc30be 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -146,8 +146,8 @@ cp -pRL {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas msg "Copying shared files from ${GTK_PREFIX}:" set -x -find /usr/local -name mime -ditto {"/usr/local","${RESOURCES}"}/share/mime +sudo find / -name mime +cp -pRL {"/usr/local","${RESOURCES}"}/share/mime set +x # GTK3 themes ditto {"/usr/local","${RESOURCES}"}/share/themes/Mac/gtk-3.0/gtk-keys.css @@ -155,7 +155,7 @@ ditto {"/usr/local","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css # Adwaita icons iconfolders=("16x16/actions" "16x16/devices" "16x16/mimetypes" "16x16/places" "16x16/status" "48x48/devices") for f in "${iconfolders[@]}"; do - ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/"$f" + cp -pRL {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/"$f" done ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/index.theme "/usr/local/bin/gtk-update-icon-cache" "${RESOURCES}/share/icons/Adwaita" From 055072c15a3e3c91d95973c740eeb4ff18c712f2 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Wed, 11 Dec 2019 00:06:29 +0100 Subject: [PATCH 44/56] ci macos: install shared-mime-info --- .github/workflows/main.yml | 2 +- tools/osx/macosx_bundle.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 7ff4c4352..1468a069e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,7 +11,7 @@ jobs: steps: - uses: actions/checkout@v1 - name: Install dependencies - run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp + run: brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun llvm expat pkgconfig libomp shared-mime-info - name: patch libiconv run: | mkdir libiconv && cd libiconv diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 4a0dc30be..e3012d453 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -146,7 +146,7 @@ cp -pRL {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas msg "Copying shared files from ${GTK_PREFIX}:" set -x -sudo find / -name mime +find /usr -name mime cp -pRL {"/usr/local","${RESOURCES}"}/share/mime set +x # GTK3 themes From 0e7a7efa1a5299febe93c4b28ab80392e67c5bd6 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Wed, 11 Dec 2019 00:32:54 +0100 Subject: [PATCH 45/56] ci macos: create directories for icons --- tools/osx/macosx_bundle.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index e3012d453..bf2357c62 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -145,16 +145,15 @@ cp -pRL {"/usr/local","${RESOURCES}"}/share/glib-2.0/schemas "/usr/local/bin/glib-compile-schemas" "${RESOURCES}/share/glib-2.0/schemas" msg "Copying shared files from ${GTK_PREFIX}:" -set -x -find /usr -name mime cp -pRL {"/usr/local","${RESOURCES}"}/share/mime -set +x + # GTK3 themes ditto {"/usr/local","${RESOURCES}"}/share/themes/Mac/gtk-3.0/gtk-keys.css ditto {"/usr/local","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css # Adwaita icons iconfolders=("16x16/actions" "16x16/devices" "16x16/mimetypes" "16x16/places" "16x16/status" "48x48/devices") for f in "${iconfolders[@]}"; do + mkdir -p ${RESOURCES}/share/icons/Adwaita/${f} cp -pRL {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/"$f" done ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/index.theme From 10d5fc4d8e837a8d9db687060e26e92465fdc30f Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Wed, 11 Dec 2019 17:41:47 +0100 Subject: [PATCH 46/56] ci macos: fix globbing --- tools/osx/macosx_bundle.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index bf2357c62..cadb1d5e8 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -136,8 +136,8 @@ mv "${LIB}"/gtk-3.0/3*/immodules/*.so "${LIB}" rm -r "${LIB}"/gtk-3.0 rm -r "${LIB}"/gdk-pixbuf-2.0 -"${GDK_PREFIX}/bin/gdk-pixbuf-query-loaders" "${LIB}"/libpix*.so > "${ETC}/gtk-3.0/gdk-pixbuf.loaders" -"${GTK_PREFIX}/bin/gtk-query-immodules-3.0" "${LIB}"/{im*.so} > "${ETC}/gtk-3.0/gtk.immodules" +"${GDK_PREFIX}"/bin/gdk-pixbuf-query-loaders "${LIB}"/libpix*.so > "${ETC}"/gtk-3.0/gdk-pixbuf.loaders +"${GTK_PREFIX}"/bin/gtk-query-immodules-3.0 "${LIB}"/im*.so > "${ETC}"/gtk-3.0/gtk.immodules sed -i "" -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}/gtk-3.0/gdk-pixbuf.loaders" "${ETC}/gtk-3.0/gtk.immodules" mkdir -p ${RESOURCES}/share/glib-2.0 From 67e35fdb5d37386064d56aeb2c1f7799297b24fb Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Wed, 11 Dec 2019 18:31:04 +0100 Subject: [PATCH 47/56] ci macos: fix icons path --- tools/osx/macosx_bundle.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index cadb1d5e8..3958326e8 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -154,7 +154,7 @@ ditto {"/usr/local","${RESOURCES}"}/share/themes/Default/gtk-3.0/gtk-keys.css iconfolders=("16x16/actions" "16x16/devices" "16x16/mimetypes" "16x16/places" "16x16/status" "48x48/devices") for f in "${iconfolders[@]}"; do mkdir -p ${RESOURCES}/share/icons/Adwaita/${f} - cp -pRL {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/"$f" + cp /usr/local/share/icons/Adwaita/${f}/* "${RESOURCES}"/share/icons/Adwaita/${f} done ditto {"/usr/local","${RESOURCES}"}/share/icons/Adwaita/index.theme "/usr/local/bin/gtk-update-icon-cache" "${RESOURCES}/share/icons/Adwaita" From 2498423a6f010ab4fc11598858b36ace5458494e Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Thu, 12 Dec 2019 15:32:59 +0100 Subject: [PATCH 48/56] ci macos: avoid ls parsing bugs --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1468a069e..ba6e44172 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -59,7 +59,7 @@ jobs: make --jobs 2 make install sudo make macosx_bundle - ARTIFACT=$(ls | grep RawTherapee*.zip) + ARTIFACT=(RawTherapee*.zip) echo "=== artifact: ${ARTIFACT}" echo "::set-env name=ARTIFACT_PATH::${GITHUB_WORKSPACE}/build/${ARTIFACT}" echo "::set-env name=ARTIFACT_FILE::${ARTIFACT}" From ec00334acba24a9f48b07b5b2ac951f0d5fb3ea2 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Thu, 12 Dec 2019 15:37:01 +0100 Subject: [PATCH 49/56] ci macos: use Apple's way of spelling macOS --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ba6e44172..ff9eb98a2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Mac OS build +name: macOS build on: push From ed6eeca929041a448f293f7e623cb5546bebe29c Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Thu, 12 Dec 2019 15:42:53 +0100 Subject: [PATCH 50/56] ci macos: explain GITHUB_REF parsing --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ff9eb98a2..e17414f44 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -35,6 +35,7 @@ jobs: RAW_THERAPEE_MINOR: '7' C_FLAGS: -Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include -I/usr/local/opt/gdk-pixbuf/include -I/usr/local/opt/libiconv/include -I/usr/local/opt/libxml2/include -I/usr/local/opt/expat/include -I/usr/local/opt/llvm/include run: | + # GITHUB_REF is the ref that triggered the build, like refs/heads/new-feature - the next line parses that to REF: the branch name only (new-feature) REF=${GITHUB_REF##*/} mkdir build && cd build cmake \ From 8071e4229250d30087611e2bb44106a2000caf2a Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Thu, 12 Dec 2019 16:12:36 +0100 Subject: [PATCH 51/56] ci macos: automatic jobs config test 2 --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e17414f44..0bb14c479 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,7 +22,7 @@ jobs: mkdir build && cd build destDir="$(pwd)" ../configure --prefix=/opt/local --disable-static 'CFLAGS=-arch x86_64 -mmacosx-version-min=10.9' 'LDFLAGS=-arch x86_64 -mmacosx-version-min=10.9' CXXFLAGS="-arch x86_64 -mmacosx-version-min=10.9" - make --jobs 2 + make --jobs make DESTDIR="${destDir}" install sudo mv opt/local /usr/local/opt/libiconv - name: print /usr/local/lib contents @@ -57,7 +57,7 @@ jobs: -DCMAKE_AR="/usr/local/opt/llvm/bin/llvm-ar" \ -DCMAKE_RANLIB="/usr/local/opt/llvm/bin/llvm-ranlib" \ .. - make --jobs 2 + make --jobs make install sudo make macosx_bundle ARTIFACT=(RawTherapee*.zip) From 8425e974e6033a84c2eced672be13169a6daf8dd Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Fri, 13 Dec 2019 14:04:46 +0100 Subject: [PATCH 52/56] ci macos: document echo ::set-env --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0bb14c479..5f5b93686 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -62,6 +62,7 @@ jobs: sudo make macosx_bundle ARTIFACT=(RawTherapee*.zip) echo "=== artifact: ${ARTIFACT}" + # defining environment variables for next step as per https://github.com/actions/starter-workflows/issues/68 echo "::set-env name=ARTIFACT_PATH::${GITHUB_WORKSPACE}/build/${ARTIFACT}" echo "::set-env name=ARTIFACT_FILE::${ARTIFACT}" - uses: actions/upload-artifact@v1 From 66cf9f0c7a7f93b062b05cb8d4ed5be3d8c5dd41 Mon Sep 17 00:00:00 2001 From: Quinten Krijger Date: Fri, 13 Dec 2019 14:13:50 +0100 Subject: [PATCH 53/56] ci macos: cleanup debug print statement --- .github/workflows/main.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5f5b93686..bab7397a6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,8 +25,6 @@ jobs: make --jobs make DESTDIR="${destDir}" install sudo mv opt/local /usr/local/opt/libiconv - - name: print /usr/local/lib contents - run: ls -al /usr/local/lib - name: cmake env: CMAKE_CXX_STANDARD: 11 From 4a25633bd72604535ed9198a21117e7e556ae9c3 Mon Sep 17 00:00:00 2001 From: Ingo Weyrich Date: Mon, 16 Dec 2019 14:35:40 +0100 Subject: [PATCH 54/56] Do not gray out adjusters when automatic is enabled, fixes #5565 --- rtgui/adjuster.cc | 44 +++++++++++++------------------------------- 1 file changed, 13 insertions(+), 31 deletions(-) diff --git a/rtgui/adjuster.cc b/rtgui/adjuster.cc index 2267a9fc1..142374213 100644 --- a/rtgui/adjuster.cc +++ b/rtgui/adjuster.cc @@ -230,22 +230,7 @@ void Adjuster::setDefaultEditedState (EditedState eState) void Adjuster::autoToggled () { - if (!editedCheckBox) { - // If not used in the BatchEditor panel - if (automatic->get_active()) { - // Disable the slider and spin button - spin->set_sensitive(false); - slider->set_sensitive(false); - reset->set_sensitive(false); - } else { - // Enable the slider and spin button - spin->set_sensitive(true); - slider->set_sensitive(true); - reset->set_sensitive(true); - } - } - - if (adjusterListener != nullptr && !blocked) { + if (adjusterListener && !blocked) { adjusterListener->adjusterAutoToggled(this); } } @@ -380,6 +365,9 @@ void Adjuster::spinChanged () if (adjusterListener && !blocked) { if (!buttonReleaseSlider.connected() || afterReset) { eventPending = false; + if (automatic) { + setAutoValue(false); + } adjusterListener->adjusterChanged(this, spin->get_value()); } else { eventPending = true; @@ -419,6 +407,9 @@ void Adjuster::sliderChanged () if (adjusterListener && !blocked) { if (!buttonReleaseSlider.connected() || afterReset) { eventPending = false; + if (automatic) { + setAutoValue(false); + } adjusterListener->adjusterChanged(this, spin->get_value()); } else { eventPending = true; @@ -459,21 +450,6 @@ void Adjuster::setAutoValue (bool a) const bool oldVal = autoChange.block(true); automatic->set_active(a); autoChange.block(oldVal); - - if (!editedCheckBox) { - // If not used in the BatchEditor panel - if (a) { - // Disable the slider and spin button - spin->set_sensitive(false); - slider->set_sensitive(false); - reset->set_sensitive(false); - } else { - // Enable the slider and spin button - spin->set_sensitive(true); - slider->set_sensitive(true); - reset->set_sensitive(true); - } - } } } @@ -481,6 +457,9 @@ bool Adjuster::notifyListener () { if (eventPending && adjusterListener != nullptr && !blocked) { + if (automatic) { + setAutoValue(false); + } adjusterListener->adjusterChanged(this, spin->get_value()); } @@ -571,6 +550,9 @@ void Adjuster::showEditedCB () void Adjuster::editedToggled () { if (adjusterListener && !blocked) { + if (automatic) { + setAutoValue(false); + } adjusterListener->adjusterChanged(this, spin->get_value()); } From 9a0cae035753922db32398b42a1b0600b31aba04 Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Mon, 16 Dec 2019 23:47:54 +0100 Subject: [PATCH 55/56] Clear progress bar when opening in external editor The last step remained visible in the progress bar when invoking the external editor. Fixes #5475 --- rtgui/editorpanel.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc index 1b5ed3fa7..806af8b2e 100644 --- a/rtgui/editorpanel.cc +++ b/rtgui/editorpanel.cc @@ -2067,6 +2067,7 @@ bool EditorPanel::idle_sentToGimp (ProgressConnector *pc, rtengine::IImagef { img->free (); int errore = pc->returnValue(); + setProgressState(false); delete pc; if (!errore) { From abac9856e7c17ce5ff5e4c2477eaa58c1b64a207 Mon Sep 17 00:00:00 2001 From: Ingo Weyrich Date: Tue, 17 Dec 2019 00:44:01 +0100 Subject: [PATCH 56/56] Apply internal default profile (neutral) instead of user defined default profiles for missing parts of existing profile when loading a raw file which already has a .pp3, fixes #5564 --- rtgui/thumbnail.cc | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/rtgui/thumbnail.cc b/rtgui/thumbnail.cc index bcf578143..5295b9d61 100644 --- a/rtgui/thumbnail.cc +++ b/rtgui/thumbnail.cc @@ -341,34 +341,31 @@ void Thumbnail::notifylisterners_procParamsChanged(int whoChangedIt) * the Preferences). * * The result is a complete ProcParams with default values merged with the values - * from the default Raw or Image ProcParams, then with the values from the loaded - * ProcParams (sidecar or cache file). - */ + * from the loaded ProcParams (sidecar or cache file). +*/ void Thumbnail::loadProcParams () { MyMutex::MyLock lock(mutex); pparamsValid = false; pparams->setDefaults(); - const PartialProfile *defaultPP = ProfileStore::getInstance()->getDefaultPartialProfile(getType() == FT_Raw); - defaultPP->applyTo(pparams.get()); if (options.paramsLoadLocation == PLL_Input) { // try to load it from params file next to the image file - int ppres = pparams->load (fname + paramFileExtension); + const int ppres = pparams->load(fname + paramFileExtension); pparamsValid = !ppres && pparams->ppVersion >= 220; // if no success, try to load the cached version of the procparams if (!pparamsValid) { - pparamsValid = !pparams->load (getCacheFileName ("profiles", paramFileExtension)); + pparamsValid = !pparams->load(getCacheFileName("profiles", paramFileExtension)); } } else { // try to load it from cache - pparamsValid = !pparams->load (getCacheFileName ("profiles", paramFileExtension)); + pparamsValid = !pparams->load(getCacheFileName("profiles", paramFileExtension)); // if no success, try to load it from params file next to the image file if (!pparamsValid) { - int ppres = pparams->load (fname + paramFileExtension); + const int ppres = pparams->load(fname + paramFileExtension); pparamsValid = !ppres && pparams->ppVersion >= 220; } }