diff options
author | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2007-10-07 00:34:07 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2007-10-07 00:34:07 +0000 |
commit | 2f8521c6d1173dd650d9ae2bba8c18e690fa3b1f (patch) | |
tree | 06bc2b997b60797bc42f696f3427f92890089d2b /packages/pkgconfig/pkgconfig-0.22 | |
parent | 0d0bf315513039bd8560ac91865c7174e789d675 (diff) | |
parent | 6e90aae26efa66553063b74b9afa9563b70fb982 (diff) |
merge of '603b2d0c7e4ad80e5779bd3bbdb822331cc0ea2b'
and '6ab53da82d157971966f5a17d0c29d54df22cac9'
Diffstat (limited to 'packages/pkgconfig/pkgconfig-0.22')
-rw-r--r-- | packages/pkgconfig/pkgconfig-0.22/sysroot-support.patch | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/packages/pkgconfig/pkgconfig-0.22/sysroot-support.patch b/packages/pkgconfig/pkgconfig-0.22/sysroot-support.patch new file mode 100644 index 0000000000..2e4f796cc9 --- /dev/null +++ b/packages/pkgconfig/pkgconfig-0.22/sysroot-support.patch @@ -0,0 +1,102 @@ +Add support for PKG_CONFIG_SYSROOT_DIR to pkgconfig + +--- + main.c | 5 ++++- + pkg-config.1 | 9 +++++++++ + pkg.c | 14 +++++++++++++- + pkg.h | 3 +++ + 4 files changed, 29 insertions(+), 2 deletions(-) + +Index: pkg-config-0.22/main.c +=================================================================== +--- pkg-config-0.22.orig/main.c 2007-09-14 10:20:15.000000000 +0100 ++++ pkg-config-0.22/main.c 2007-09-14 10:22:41.000000000 +0100 +@@ -46,6 +46,8 @@ + static int want_debug_spew = 0; + static int want_verbose_errors = 0; + static int want_stdout_errors = 0; ++char *pcsysrootdir = NULL; ++ + + void + debug_spew (const char *format, ...) +@@ -196,7 +198,7 @@ main (int argc, char **argv) + GString *str; + GSList *packages = NULL; + char *search_path; +- char *pcbuilddir; ++ char *pcbuilddir; + const char *pkglibdir; + char **search_dirs; + char **iter; +@@ -345,6 +347,7 @@ main (int argc, char **argv) + } + } + #endif ++ pcsysrootdir = getenv ("PKG_CONFIG_SYSROOT_DIR"); + + pcbuilddir = getenv ("PKG_CONFIG_TOP_BUILD_DIR"); + if (pcbuilddir) +Index: pkg-config-0.22/pkg.c +=================================================================== +--- pkg-config-0.22.orig/pkg.c 2007-09-14 10:20:15.000000000 +0100 ++++ pkg-config-0.22/pkg.c 2007-09-14 10:22:41.000000000 +0100 +@@ -479,11 +479,23 @@ string_list_to_string (GSList *list) + GSList *tmp; + GString *str = g_string_new (""); + char *retval; ++ int offset=0; + + tmp = list; + while (tmp != NULL) + { +- g_string_append (str, tmp->data); ++ if (pcsysrootdir != NULL) ++ { ++ if (!strncmp(tmp->data,"-I",2) || ++ !strncmp(tmp->data,"-L",2)) ++ { ++ offset=2; ++ g_string_append_c (str,((char*)tmp->data)[0]); ++ g_string_append_c (str,((char*)tmp->data)[1]); ++ g_string_append (str,pcsysrootdir); ++ } ++ } ++ g_string_append (str, tmp->data+offset); + g_string_append_c (str, ' '); + + tmp = g_slist_next (tmp); +Index: pkg-config-0.22/pkg-config.1 +=================================================================== +--- pkg-config-0.22.orig/pkg-config.1 2007-09-14 10:20:15.000000000 +0100 ++++ pkg-config-0.22/pkg-config.1 2007-09-14 10:23:08.000000000 +0100 +@@ -260,6 +260,15 @@ Don't strip -I/usr/include out of cflags + Don't strip -L/usr/lib out of libs + + .TP ++.I "PKG_CONFIG_SYSROOT_DIR" ++Modify -I and -L to use the directories located in target sysroot. ++this option is usefull when crosscompiling package that use pkg-config ++to determine CFLAGS anf LDFLAGS. -I and -L are modified to point to ++the new system root. this means that a -I/usr/include/libfoo will ++become -I/var/target/usr/include/libfoo with a PKG_CONFIG_SYSROOT_DIR ++equal to /var/target (same rule apply to -L) ++ ++.TP + .I "PKG_CONFIG_LIBDIR" + Replaces the default \fIpkg-config\fP search directory. + +Index: pkg-config-0.22/pkg.h +=================================================================== +--- pkg-config-0.22.orig/pkg.h 2007-09-14 10:20:15.000000000 +0100 ++++ pkg-config-0.22/pkg.h 2007-09-14 10:22:41.000000000 +0100 +@@ -123,6 +123,9 @@ void disable_private_libs(void); + /* If TRUE, do not automatically prefer uninstalled versions */ + extern gboolean disable_uninstalled; + ++/* string that contain environment */ ++extern char* pcsysrootdir; ++ + #ifdef G_OS_WIN32 + /* If TRUE, do not automatically define "prefix" while + * parsing each .pc file */ |