diff --git a/test/integration/jw-pkg/projects/create-pkg-config/Makefile b/test/integration/jw-pkg/projects/create-pkg-config/Makefile new file mode 100644 index 00000000..4289f7ea --- /dev/null +++ b/test/integration/jw-pkg/projects/create-pkg-config/Makefile @@ -0,0 +1,19 @@ +TOPDIR = ../../../../.. + +OUTPUT = test-out.txt +REFERENCE = test-expected.txt + +include $(TOPDIR)/make/proj.mk +include $(TOPDIR)/make/test-jw-pkg.mk + +all: + +$(OUTPUT): Makefile test.sh + bash ./test.sh $(TEST_CMD_LINE) > $(OUTPUT).tmp + diff $(REFERENCE) $(OUTPUT).tmp + mv $(OUTPUT).tmp $(OUTPUT) + +test: $(OUTPUT) +clean: test.integration.in-tree.clean +test.integration.in-tree.clean: + rm -f $(OUTPUT) $(OUTPUT).tmp diff --git a/test/integration/jw-pkg/projects/create-pkg-config/test-expected.txt b/test/integration/jw-pkg/projects/create-pkg-config/test-expected.txt new file mode 100644 index 00000000..2a43ccfb --- /dev/null +++ b/test/integration/jw-pkg/projects/create-pkg-config/test-expected.txt @@ -0,0 +1,31 @@ +============= Running: jw-pkg.py -t ../../../../.. --log-level info projects create-pkg-config -n jw-pkg -s jw-pkg test -p /usr -v 1.0 --cflags=-I/usr/include --libflags=-L/usr/lib -ljw-pkg -r jw-core >= 1.0, jw-base -R jw-devel +prefix = /usr +exec_prefix = ${prefix} +includedir = ${prefix}/include +libdir = ${exec_prefix}/lib + +Name: jw-pkg +Description: jw-pkg test +Version: 1.0 +Cflags: -I/usr/include +Libs: -L/usr/lib -ljw-pkg +Requires: jw-core >= 1.0, jw-base +Requires.private: jw-devel============= Running: jw-pkg.py -t ../../../../.. --log-level info projects create-pkg-config -n jw-pkg -p /usr -v 1.0 -r foo bar>=2.0, baz +prefix = /usr +exec_prefix = ${prefix} +includedir = ${prefix}/include +libdir = ${exec_prefix}/lib + +Name: jw-pkg +Description: +Version: 1.0 +Requires: foo, bar >= 2.0, baz============= Running: jw-pkg.py -t ../../../../.. --log-level info projects create-pkg-config -n jw-pkg -p /usr -v 1.0 -R qux +prefix = /usr +exec_prefix = ${prefix} +includedir = ${prefix}/include +libdir = ${exec_prefix}/lib + +Name: jw-pkg +Description: +Version: 1.0 +Requires.private: qux \ No newline at end of file diff --git a/test/integration/jw-pkg/projects/create-pkg-config/test.sh b/test/integration/jw-pkg/projects/create-pkg-config/test.sh new file mode 100644 index 00000000..16812f54 --- /dev/null +++ b/test/integration/jw-pkg/projects/create-pkg-config/test.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# shellcheck disable=SC2048,SC2086 +# Unquoted $* is intentional — the jw-pkg command line + +export LC_ALL="C" +set -euo pipefail + +jw_pkg_py="$*" + +run() +{ + local log_cmd + # shellcheck disable=SC2001 + log_cmd=$(echo "$*" | sed 's|.*python3[0-9.]*\s\+\(\.\.\/\)*scripts/||') + printf '============= Running: %s\n' "$log_cmd" + "$@" +} + +run $jw_pkg_py projects create-pkg-config \ + -n jw-pkg -s 'jw-pkg test' -p /usr -v 1.0 \ + --cflags=-I/usr/include --libflags=-L/usr/lib\ -ljw-pkg \ + -r 'jw-core >= 1.0, jw-base' -R 'jw-devel' + +run $jw_pkg_py projects create-pkg-config \ + -n jw-pkg -p /usr -v 1.0 -r 'foo bar>=2.0, baz' + +run $jw_pkg_py projects create-pkg-config \ + -n jw-pkg -p /usr -v 1.0 -R 'qux'