diff options
| author | Kai Pastor <dg0yt@darc.de> | 2022-02-05 12:03:25 +0100 |
|---|---|---|
| committer | Kai Pastor <dg0yt@darc.de> | 2022-02-05 18:06:45 +0100 |
| commit | 2b0ecb6f19b1be906a39eac5143d4c40252f0a5a (patch) | |
| tree | 1e1dbab6c61780139e3bf67b566ce3478a86019c | |
| parent | 295c67869270dc9319f965f1c18108fad516296e (diff) | |
| download | PROJ-2b0ecb6f19b1be906a39eac5143d4c40252f0a5a.tar.gz PROJ-2b0ecb6f19b1be906a39eac5143d4c40252f0a5a.zip | |
Adapt testing to recursive pkg-config requirements
When pkg-config is called with --static, it will recursively collect
all Libs and Libs.private which are discovered via Requires and
Requires.private. So these libs must be available for linking even
when acutally only lib proj uses static linkage.
Libs and pkg-config must be provided for the target triplet.
| -rwxr-xr-x | .github/workflows/clang_linux/start.sh | 5 | ||||
| -rwxr-xr-x | .github/workflows/linux_gcc_32bit/start.sh | 7 | ||||
| -rwxr-xr-x | .github/workflows/linux_gcc_5_4/start.sh | 2 | ||||
| -rw-r--r-- | test/postinstall/c_app/makefile.mak | 6 | ||||
| -rwxr-xr-x | test/postinstall/test_autotools.sh | 5 | ||||
| -rwxr-xr-x | test/postinstall/test_pkg-config.sh | 1 | ||||
| -rwxr-xr-x | travis/linux_generic/before_install.sh | 3 |
7 files changed, 18 insertions, 11 deletions
diff --git a/.github/workflows/clang_linux/start.sh b/.github/workflows/clang_linux/start.sh index 81eca492..48099fe3 100755 --- a/.github/workflows/clang_linux/start.sh +++ b/.github/workflows/clang_linux/start.sh @@ -7,8 +7,9 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ autoconf automake libtool make cmake ccache pkg-config python3-pip sqlite3 tar zip \ clang++-10 jq python3-clang-10 \ libsqlite3-dev \ - libtiff-dev \ - libcurl4-openssl-dev \ + libtiff-dev libwebp-dev libzstd-dev \ + libcurl4-openssl-dev libnghttp2-dev libidn2-dev librtmp-dev libssh-dev \ + libpsl-dev libssl-dev libkrb5-dev comerr-dev libldap2-dev libbrotli-dev \ nlohmann-json3-dev libgtest-dev python3 -m pip install --user jsonschema diff --git a/.github/workflows/linux_gcc_32bit/start.sh b/.github/workflows/linux_gcc_32bit/start.sh index 87a98a0b..60be6fd3 100755 --- a/.github/workflows/linux_gcc_32bit/start.sh +++ b/.github/workflows/linux_gcc_32bit/start.sh @@ -15,8 +15,9 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends -o AP autoconf automake libtool make cmake ccache pkg-config python3-pip sqlite3 tar zip \ gcc-multilib g++-multilib g++ jq dpkg-dev \ libsqlite3-dev:$ARCH \ - libtiff-dev:$ARCH \ - libcurl4-openssl-dev:$ARCH + libtiff-dev:$ARCH libwebp-dev:$ARCH libzstd-dev:$ARCH \ + libcurl4-openssl-dev:$ARCH libnghttp2-dev:$ARCH libidn2-dev:$ARCH librtmp-dev:$ARCH libssh-dev:$ARCH \ + libpsl-dev:$ARCH libssl-dev:$ARCH libkrb5-dev:$ARCH comerr-dev:$ARCH libldap2-dev:$ARCH libbrotli-dev:$ARCH python3 -m pip install --user jsonschema export PATH=$HOME/.local/bin:$PATH @@ -28,6 +29,8 @@ export TIFF_LIBS="-L/usr/lib/i386-linux-gnu -ltiff" export SQLITE3_CFLAGS=-I/usr/include/i386-linux-gnu export SQLITE3_LIBS="-L/usr/lib/i386-linux-gnu -lsqlite3" +export PKG_CONFIG=i686-linux-gnu-pkg-config + cd "$WORK_DIR" if test -f "$WORK_DIR/ccache.tar.gz"; then diff --git a/.github/workflows/linux_gcc_5_4/start.sh b/.github/workflows/linux_gcc_5_4/start.sh index 4b7088d7..be23392b 100755 --- a/.github/workflows/linux_gcc_5_4/start.sh +++ b/.github/workflows/linux_gcc_5_4/start.sh @@ -13,7 +13,7 @@ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ g++ jq lcov python3-setuptools \ libsqlite3-dev \ libtiff-dev \ - libcurl4-openssl-dev + libcurl4-openssl-dev libidn11-dev librtmp-dev libssl-dev libkrb5-dev comerr-dev libldap2-dev python3 -m pip install --user --upgrade "pip < 21.0" echo `python3 -m pip --version` diff --git a/test/postinstall/c_app/makefile.mak b/test/postinstall/c_app/makefile.mak index 3e29d4b1..01d1c259 100644 --- a/test/postinstall/c_app/makefile.mak +++ b/test/postinstall/c_app/makefile.mak @@ -6,18 +6,18 @@ TESTS = \ test_searchpath.sh \ test_version.sh -override CFLAGS += -g -Wall -Werror $(shell pkg-config proj --cflags) +override CFLAGS += -g -Wall -Werror $(shell ${PKG_CONFIG} proj --cflags) ifeq ($(BUILD_MODE),static) UNAME_S := $(shell uname -s) - _ldflags := $(shell pkg-config proj --libs --static) + _ldflags := $(shell ${PKG_CONFIG} proj --libs --static) ifeq ($(UNAME_S),Linux) # force static linking to libproj _ldflags := $(shell echo $(_ldflags) | sed 's/-lproj/-Wl,-Bstatic -lproj -Wl,-Bdynamic/') endif override LDFLAGS += $(_ldflags) else # default is shared - override LDFLAGS += $(shell pkg-config proj --libs) + override LDFLAGS += $(shell ${PKG_CONFIG} proj --libs) endif all: $(PROGRAM) diff --git a/test/postinstall/test_autotools.sh b/test/postinstall/test_autotools.sh index 28954c4d..c3e0e60b 100755 --- a/test/postinstall/test_autotools.sh +++ b/test/postinstall/test_autotools.sh @@ -12,12 +12,13 @@ main_setup $1 $2 echo "Running post-install tests with autotools/pkg-config (${BUILD_MODE})" if [ ${BUILD_MODE} = shared ]; then - export PKG_CONFIG="pkg-config" + export PKG_CONFIG="${PKG_CONFIG:-pkg-config}" ENABLE_STATIC_PROJ=no else - export PKG_CONFIG="pkg-config --static" + export PKG_CONFIG="${PKG_CONFIG:-pkg-config} --static" ENABLE_STATIC_PROJ=yes fi +echo ,${PKG_CONFIG}, export PKG_CONFIG_PATH=${prefix}/lib/pkgconfig diff --git a/test/postinstall/test_pkg-config.sh b/test/postinstall/test_pkg-config.sh index a9ccabce..d170e189 100755 --- a/test/postinstall/test_pkg-config.sh +++ b/test/postinstall/test_pkg-config.sh @@ -11,6 +11,7 @@ main_setup $1 $2 echo "Running post-install tests with pkg-config (${BUILD_MODE})" +export PKG_CONFIG="${PKG_CONFIG:-pkg-config}" export PKG_CONFIG_PATH=${prefix}/lib/pkgconfig if [ ${BUILD_MODE} = shared ]; then diff --git a/travis/linux_generic/before_install.sh b/travis/linux_generic/before_install.sh index dbd5f5b2..07d5c979 100755 --- a/travis/linux_generic/before_install.sh +++ b/travis/linux_generic/before_install.sh @@ -9,4 +9,5 @@ sudo apt-get install -qq \ sqlite3 zip \ libsqlite3-dev \ libtiff-dev \ - libcurl4-openssl-dev + libcurl4-openssl-dev libnghttp2-dev libidn2-dev librtmp-dev libssh-dev \ + libpsl-dev libssl-dev libkrb5-dev comerr-dev libldap2-dev libbrotli-dev |
