pkg-config/check
Dan Nicholson 360a614af8 Start from end of package lists when processing Requires
Prior to commit 6ecf318, the resolved list of required packages was
built in an appending way where each package on the command line or in
Requires would appear in the list in the order they appeared. With
6ecf318, that list building was changed to prepending, which had a
subtle change on the resolved order.

For example, suppose package a has "Requires: b c d". Previously, the
list would be built as a->b->c->d by appending each as they were
encountered. Now, the list is built by walking all the way down the
dependency chain for each package in a depth first manner and prepending
packages while unwinding. This would result in the package ilst being
a->d->c->b. This same effect happens with the command line packages
where previously requesting packages x and y would create a package list
of x->y and now produces a list of y->x.

While technically these should be the same since there are no
interdependencies, it's causes flags to be output in different order
than previously in pkg-config. This can be seen most readily in the
check-gtk test.

Instead, operate on the package lists backwards when building the
resolved package list.
2012-12-03 07:08:20 -08:00
..
gtk Add a gtk testcase to provide something with complex interactions 2012-11-28 05:59:49 -08:00
sort Test ordering of flags based on package depth and path 2012-11-28 05:52:06 -08:00
sub check: Exercise all printing options 2012-09-29 09:57:46 -07:00
check-cflags Allow all combinations of --cflags and --libs variants 2012-11-03 11:07:59 -07:00
check-circular-requires Support circular Requires loops 2012-10-13 08:14:35 -07:00
check-cmd-options check: Ensure unknown options fail 2012-10-03 05:33:31 -07:00
check-conflicts check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
check-debug check: Ensure debugging output works correctly 2012-10-03 05:33:31 -07:00
check-define-variable check: Test --define-variable corner cases 2012-09-29 09:09:30 -07:00
check-duplicate-flags Remove duplicate packages after resolving requires 2012-12-03 07:05:43 -08:00
check-gtk Start from end of package lists when processing Requires 2012-12-03 07:08:20 -08:00
check-idirafter check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
check-includedir check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
check-libs Always use --static test results for indirect depencency results 2012-11-29 19:18:41 -08:00
check-libs-private check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
check-missing Always use --static test results for indirect depencency results 2012-11-29 19:18:41 -08:00
check-mixed-flags Allow all combinations of --cflags and --libs variants 2012-11-03 11:07:59 -07:00
check-non-l-flags Start from end of package lists when processing Requires 2012-12-03 07:08:20 -08:00
check-path check: Check path handling 2012-10-02 05:51:22 -07:00
check-print-options Don't crash on --print-variables when there are no variables 2012-10-13 09:06:18 -07:00
check-requires-private Start from end of package lists when processing Requires 2012-12-03 07:08:20 -08:00
check-requires-version check: Test version comparisons within Requires fields 2012-10-03 05:33:32 -07:00
check-sort-order Test ordering of flags based on package depth and path 2012-11-28 05:52:06 -08:00
check-sysroot Always use --static test results for indirect depencency results 2012-11-29 19:18:41 -08:00
check-uninstalled check: Test -uninstalled functionality 2012-10-03 05:33:31 -07:00
check-version check: Test pkg-config version 2012-10-02 05:51:22 -07:00
check-whitespace check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
circular-1.pc Support circular Requires loops 2012-10-13 08:14:35 -07:00
circular-2.pc Support circular Requires loops 2012-10-13 08:14:35 -07:00
circular-3.pc Support circular Requires loops 2012-10-13 08:14:35 -07:00
common check: Pass args to test function instead of setting in variable 2012-09-29 08:50:57 -07:00
config.sh.in check: Test pkg-config version 2012-10-02 05:51:22 -07:00
conflicts-test.pc 2008-03-23 Tollef Fog Heen <tfheen@err.no> 2008-03-23 21:39:07 +01:00
fields-blank.pc Add test case for empty fields 2010-05-27 22:23:40 +02:00
flag-dup-1.pc Test stripping of duplicate flags 2012-11-28 05:52:13 -08:00
flag-dup-2.pc Test stripping of duplicate flags 2012-11-28 05:52:13 -08:00
idirafter.pc Handle -idirafter specially 2010-05-09 09:43:10 +02:00
includedir.pc Add includedir test 2005-08-27 09:05:14 +00:00
inst-uninstalled.pc check: Test -uninstalled functionality 2012-10-03 05:33:31 -07:00
inst.pc check: Test -uninstalled functionality 2012-10-03 05:33:31 -07:00
Makefile.am Add a gtk testcase to provide something with complex interactions 2012-11-28 05:59:49 -08:00
missing-requires-private.pc 2009-03-30 Tollef Fog Heen <tfheen@err.no> 2009-03-30 20:40:53 +02:00
missing-requires.pc 2009-03-30 Tollef Fog Heen <tfheen@err.no> 2009-03-30 20:49:17 +02:00
no-variables.pc Don't crash on --print-variables when there are no variables 2012-10-13 09:06:18 -07:00
non-l-required.pc Consistently resolve requires depth-first to fix non-l flag ordering 2012-10-13 08:14:35 -07:00
non-l.pc Consistently resolve requires depth-first to fix non-l flag ordering 2012-10-13 08:14:35 -07:00
other.pc check: Test all variants of --cflags and --libs 2012-10-03 05:33:31 -07:00
private-dep.pc 2005-06-27 Tollef Fog Heen <tfheen@err.no> 2005-07-14 13:07:31 +00:00
public-dep.pc Consistently resolve requires depth-first to fix non-l flag ordering 2012-10-13 08:14:35 -07:00
requires-test.pc check: Enhance --print-requires tests 2012-10-02 05:51:22 -07:00
requires-version-1.pc check: Test version comparisons within Requires fields 2012-10-03 05:33:32 -07:00
requires-version-2.pc check: Test version comparisons within Requires fields 2012-10-03 05:33:32 -07:00
requires-version-3.pc check: Test version comparisons within Requires fields 2012-10-03 05:33:32 -07:00
simple.pc 2005-05-21 Tollef Fog Heen <tfheen@err.no> 2005-07-14 13:07:18 +00:00
sort-order-1-1.pc Test ordering of flags based on package depth and path 2012-11-28 05:52:06 -08:00
sort-order-1-2.pc Test ordering of flags based on package depth and path 2012-11-28 05:52:06 -08:00
sort-order-1-3.pc Test ordering of flags based on package depth and path 2012-11-28 05:52:06 -08:00
whitespace.pc Allow $() through unescaped. 2011-04-13 22:02:51 +02:00