mirror of
https://gitlab.freedesktop.org/pkg-config/pkg-config.git
synced 2026-05-04 09:28:02 +02:00
Prior to commit6ecf318, 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. With6ecf318, 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.
58 lines
2.6 KiB
Bash
Executable file
58 lines
2.6 KiB
Bash
Executable file
#! /bin/sh
|
|
|
|
set -e
|
|
|
|
. ${srcdir}/common
|
|
|
|
# Limit pkg-config files to gtk subdir
|
|
PKG_CONFIG_LIBDIR=${srcdir}/gtk
|
|
|
|
# Fetch Cflags of gtk+-3.0. Prior results to check for regressions.
|
|
# pkg-config-0.21 - pkg-config-0.27.1
|
|
# -DGSEAL_ENABLE -pthread -I/gtk/include/gtk-3.0 -I/gtk/include/atk-1.0 \
|
|
# -I/gtk/include/cairo -I/gtk/include/gdk-pixbuf-2.0 -I/gtk/include/pango-1.0 \
|
|
# -I/gtk/include/glib-2.0 -I/gtk/lib/glib-2.0/include -I/gtk/include/pixman-1 \
|
|
# -I/gtk/include -I/gtk/include/freetype2
|
|
RESULT="-DGSEAL_ENABLE -pthread -I/gtk/include/gtk-3.0 \
|
|
-I/gtk/include/pango-1.0 -I/gtk/include/atk-1.0 -I/gtk/include/cairo \
|
|
-I/gtk/include/pixman-1 -I/gtk/include -I/gtk/include/gdk-pixbuf-2.0 \
|
|
-I/gtk/include/glib-2.0 -I/gtk/lib/glib-2.0/include -I/gtk/include/freetype2"
|
|
run_test --cflags gtk+-3.0
|
|
run_test --cflags --static gtk+-3.0
|
|
|
|
# Fetch Libs of gtk+-3.0. Prior results to check for regressions.
|
|
# pkg-config-0.21 - pkg-config-0.27.1
|
|
# -pthread -L/gtk/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 \
|
|
# -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lcairo -lpango-1.0 \
|
|
# -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt \
|
|
# -lglib-2.0
|
|
RESULT="-pthread -L/gtk/lib -lgtk-3 -lgdk-3 -lpangocairo-1.0 -latk-1.0 \
|
|
-lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 \
|
|
-lpango-1.0 -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lrt -lglib-2.0 \
|
|
-lfreetype -lfontconfig"
|
|
if [ "$list_indirect_deps" = no ]; then
|
|
run_test --libs gtk+-3.0
|
|
fi
|
|
|
|
# Fetch static Libs of gtk+-3.0. Prior results to check for regressions.
|
|
# pkg-config-0.21
|
|
# -pthread -L/gtk/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lresolv \
|
|
# -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lcairo \
|
|
# -lpixman-1 -lXrender -lX11 -lpthread -lpng12 -lz -lm -lpango-1.0 \
|
|
# -lfontconfig -lexpat -lfreetype -lgobject-2.0 -lffi -lgmodule-2.0 -ldl \
|
|
# -lgthread-2.0 -lglib-2.0 -lrt
|
|
# pkg-config-0.22 - pkg-config-0.27.1
|
|
# -pthread -L/gtk/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lresolv \
|
|
# -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lcairo \
|
|
# -lpixman-1 -lXrender -lX11 -lpthread -lxcb -lXau -lpng12 -lz -lm \
|
|
# -lpango-1.0 -lfontconfig -lexpat -lfreetype -lgobject-2.0 -lffi \
|
|
# -lgmodule-2.0 -ldl -lgthread-2.0 -lglib-2.0 -lrt
|
|
RESULT="-pthread -L/gtk/lib -lgtk-3 -lgdk-3 -lpangocairo-1.0 -latk-1.0 \
|
|
-lcairo-gobject -lcairo -lpixman-1 -lXrender -lX11 -lpthread -lxcb -lXau \
|
|
-lgdk_pixbuf-2.0 -lpng12 -lm -lgio-2.0 -lz -lresolv -lpangoft2-1.0 \
|
|
-lpango-1.0 -lgobject-2.0 -lffi -lgthread-2.0 -lgmodule-2.0 -ldl -lglib-2.0 \
|
|
-lrt -lfontconfig -lexpat -lfreetype"
|
|
if [ "$list_indirect_deps" = yes ]; then
|
|
run_test --libs gtk+-3.0
|
|
fi
|
|
run_test --libs --static gtk+-3.0
|