pkgconf/tests/requires.sh

165 lines
3.4 KiB
Bash
Raw Normal View History

2016-09-18 20:48:13 +00:00
#!/usr/bin/env atf-sh
. $(atf_get_srcdir)/test_env.sh
tests_init \
libs \
libs_cflags \
libs_static \
libs_static_pure \
2016-09-18 20:48:13 +00:00
argv_parse2 \
static_cflags \
private_duplication \
private_duplication_digraph \
2024-02-08 20:37:35 +00:00
foo_bar \
bar_foo \
foo_metapackage_3 \
2016-09-18 20:48:13 +00:00
libs_static2 \
missing \
requires_internal \
requires_internal_missing \
requires_internal_collision \
orphaned_requires_private
2016-09-18 20:48:13 +00:00
libs_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-L/test/lib -lbar -lfoo\n" \
2016-09-18 20:48:13 +00:00
pkgconf --libs bar
}
libs_cflags_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-fPIC -I/test/include/foo -L/test/lib -lbaz\n" \
2016-09-18 20:48:13 +00:00
pkgconf --libs --cflags baz
}
libs_static_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
2024-02-23 14:18:08 +00:00
-o inline:"-L/test/lib -lbaz -L/test/lib -lzee -lfoo\n" \
2016-09-18 20:48:13 +00:00
pkgconf --static --libs baz
}
libs_static_pure_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
2024-02-23 14:18:08 +00:00
-o inline:"-L/test/lib -lbaz -lfoo\n" \
pkgconf --static --pure --libs baz
}
2016-09-18 20:48:13 +00:00
argv_parse2_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-llib-1 -pthread /test/lib/lib2.so\n" \
2016-09-18 20:48:13 +00:00
pkgconf --static --libs argv-parse-2
}
static_cflags_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-fPIC -I/test/include/foo -DFOO_STATIC\n" \
2016-09-18 20:48:13 +00:00
pkgconf --static --cflags baz
}
private_duplication_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
2024-02-23 14:18:08 +00:00
-o inline:"-lprivate -lbaz -lzee -lbar -lfoo\n" \
2016-09-18 20:48:13 +00:00
pkgconf --static --libs-only-l private-libs-duplication
}
private_duplication_digraph_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
2024-03-18 07:37:17 +00:00
-o 'match:"user:request" -> "private-libs-duplication"' \
-o 'match:"private-libs-duplication" -> "bar"' \
-o 'match:"private-libs-duplication" -> "baz"' \
-o 'match:"bar" -> "foo"' \
-o 'match:"baz" -> "foo"' \
pkgconf --static --libs-only-l private-libs-duplication --digraph
}
2024-02-08 20:37:35 +00:00
bar_foo_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-lbar -lfoo\n" \
pkgconf --static --libs-only-l bar foo
}
foo_bar_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-lbar -lfoo\n" \
pkgconf --static --libs-only-l foo bar
}
foo_metapackage_3_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-lbar -lfoo\n" \
pkgconf --static --libs-only-l foo metapackage-3
}
2016-09-18 20:48:13 +00:00
libs_static2_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-o inline:"-lbar -lbar-private -L/test/lib -lfoo\n" \
2016-09-18 20:48:13 +00:00
pkgconf --static --libs static-libs
}
missing_body()
{
export PKG_CONFIG_PATH="${selfdir}/lib1"
atf_check \
-s exit:1 \
-e ignore \
-o ignore \
2016-09-18 20:48:13 +00:00
pkgconf --cflags missing-require
}
requires_internal_body()
{
atf_check \
-o inline:"-lbar -lbar-private -L/test/lib -lfoo\n" \
pkgconf --with-path="${selfdir}/lib1" --static --libs requires-internal
}
requires_internal_missing_body()
{
atf_check \
-s exit:1 \
-e ignore \
-o ignore \
pkgconf --with-path="${selfdir}/lib1" --static --libs requires-internal-missing
}
requires_internal_collision_body()
{
atf_check \
-o inline:"-I/test/local/include/foo\n" \
pkgconf --with-path="${selfdir}/lib1" --cflags requires-internal-collision
}
orphaned_requires_private_body()
{
atf_check \
-s exit:1 \
-e ignore \
-o ignore \
pkgconf --with-path="${selfdir}/lib1" --cflags --libs orphaned-requires-private
}