@@ -3,7 +3,7 @@ name: C/C++ CI
33on :
44 push :
55 branches : ['*']
6- tags : ['*']
6+ tags :
77 pull_request :
88 release :
99 types : ['created', 'edited']
@@ -32,19 +32,29 @@ jobs:
3232 cd build
3333 cmake -DLSL_UNITTESTS=1 -DCPACK_PACKAGE_DIRECTORY=${PWD}/package ..
3434 - name : make
35+ run : cmake --build build --config Release -j --target install
36+ - name : package
3537 shell : bash
38+ if : " !startsWith(github.ref, 'refs/heads')"
3639 run : |
37- cmake --build build --config Release -j --target install
3840 echo $GITHUB_REF
39- if [ $GITHUB_REF != "refs/heads"* ]; then
40- cmake --build build --config Release -j --target package
41- cmake -E remove_directory build/uploadpkgs/_CPack_Packages
41+ cmake --build build --config Release -j --target package
42+ # On Debian / Ubuntu the dependencies can only be resolved for
43+ # already installed packages. Therefore, we have built all
44+ # packages without dependencies in the previous step,
45+ # install them and rebuild them with dependency discovery enabled
46+ if [ "${{ matrix.os }}" = "ubuntu-latest" ]; then
47+ cmake -DCPACK_DEBIAN_PACKAGE_SHLIBDEPS=ON .
48+ sudo dpkg -i build/package/*.deb
49+ cmake --build build --config Release -j --target package
4250 fi
51+ cmake -E remove_directory build/uploadpkgs/_CPack_Packages
4352 - name : upload install dir
4453 uses : actions/upload-artifact@master
4554 with :
4655 name : build-${{ matrix.os }}
4756 path : build/install
57+
4858 - name : upload package
4959 uses : actions/upload-artifact@master
5060 if : " !startsWith(github.ref, 'refs/heads')"
0 commit comments