{"thread":{"id":"32990","subject":"[PATCH] Improve QNX support in GIT","startedAt":"2013-02-23T22:02:36Z","lastAt":"2013-02-25T08:30:43Z","messageCount":7,"participants":["Mike Gorchak","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"210112","messageId":"CAHXAxrMRxKKiEarSQ0fCLt6-zyS=52B+kmZMLDf8SQAGzGbjjQ@mail.gmail.com","threadId":"32990","inReplyTo":null,"subject":"[PATCH] Improve QNX support in GIT","fromName":"Mike Gorchak","fromEmail":"mike.gorchak.qnx@gmail.com","sentAt":"2013-02-23T22:02:36Z","receivedAt":"2013-02-23T22:02:36Z","isPatch":true,"sender":{"key":"mike.gorchak.qnx@gmail.com","avatar":"https://avatars.githubusercontent.com/u/1337711?v=4"},"body":"Hi,\n\nHere is a small patch with QNX build improvements:\n\n1) Rename tar.h to tar_git.h. Latest QNX versions have system tar.h\nheader according to\nhttp://pubs.opengroup.org/onlinepubs/009696699/basedefs/tar.h.html ,\nto avoid inclusion of another tar.h, original header was renamed.\n2) Rename fnmatch.h to fnmatch_gnu.h and fnmatch.c to fnmatch_gnu.c to\navoid inclusion of system fnmatch.h header in case if -I/usr/include\npath is specified before -Icompat/fnmatch. Which is common situation.\n3) pager.c - default \"less\" invocation flags were changed for QNX 6,x\nplatform, since QNX has incompatible with GNU coreutils version of\n\"less\" utility.\n4) config.mak.uname - a) do not override mkdtemp/mkstemps/strcasestr\ndetection, since newer QNX version could contain such functions. Let\nto configure decide what is present in the system. b) getpagesize()\nfunction is existing under QNX, c) QNX has pthread functions in the\nlibc, so do not define NO_PTHREAD macro.\n\nThanks in advance!\n\n\ndiff --git a/Makefile b/Makefile\nindex ba8e243..f6dd2eb 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -726,7 +726,7 @@ LIB_H += streaming.h\n LIB_H += string-list.h\n LIB_H += submodule.h\n LIB_H += tag.h\n-LIB_H += tar.h\n+LIB_H += tar_git.h\n LIB_H += thread-utils.h\n LIB_H += transport.h\n LIB_H += tree-walk.h\n@@ -1256,12 +1256,12 @@ endif\n ifdef NO_FNMATCH\n \tCOMPAT_CFLAGS += -Icompat/fnmatch\n \tCOMPAT_CFLAGS += -DNO_FNMATCH\n-\tCOMPAT_OBJS += compat/fnmatch/fnmatch.o\n+\tCOMPAT_OBJS += compat/fnmatch/fnmatch_gnu.o\n else\n ifdef NO_FNMATCH_CASEFOLD\n \tCOMPAT_CFLAGS += -Icompat/fnmatch\n \tCOMPAT_CFLAGS += -DNO_FNMATCH_CASEFOLD\n-\tCOMPAT_OBJS += compat/fnmatch/fnmatch.o\n+\tCOMPAT_OBJS += compat/fnmatch/fnmatch_gnu.o\n endif\n endif\n ifdef USE_WILDMATCH\ndiff --git a/archive-tar.c b/archive-tar.c\nindex 719b629..8e24336 100644\n--- a/archive-tar.c\n+++ b/archive-tar.c\n@@ -2,7 +2,7 @@\n  * Copyright (c) 2005, 2006 Rene Scharfe\n  */\n #include \"cache.h\"\n-#include \"tar.h\"\n+#include \"tar_git.h\"\n #include \"archive.h\"\n #include \"streaming.h\"\n #include \"run-command.h\"\ndiff --git a/builtin/tar-tree.c b/builtin/tar-tree.c\nindex 3f1e701..b0e4551 100644\n--- a/builtin/tar-tree.c\n+++ b/builtin/tar-tree.c\n@@ -3,7 +3,7 @@\n  */\n #include \"cache.h\"\n #include \"commit.h\"\n-#include \"tar.h\"\n+#include \"tar_git.h\"\n #include \"builtin.h\"\n #include \"quote.h\"\n \ndiff --git a/compat/fnmatch/fnmatch.c b/compat/fnmatch/fnmatch_gnu.c\nsimilarity index 99%\nrename from compat/fnmatch/fnmatch.c\nrename to compat/fnmatch/fnmatch_gnu.c\nindex 5ef0685..f9a5e5b 100644\n--- a/compat/fnmatch/fnmatch.c\n+++ b/compat/fnmatch/fnmatch_gnu.c\n@@ -26,7 +26,7 @@\n #endif\n \n #include <errno.h>\n-#include <fnmatch.h>\n+#include <fnmatch_gnu.h>\n #include <ctype.h>\n \n #if HAVE_STRING_H || defined _LIBC\ndiff --git a/compat/fnmatch/fnmatch.h b/compat/fnmatch/fnmatch_gnu.h\nsimilarity index 100%\nrename from compat/fnmatch/fnmatch.h\nrename to compat/fnmatch/fnmatch_gnu.h\ndiff --git a/config.mak.uname b/config.mak.uname\nindex 8743a6d..2d42ffe 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -527,14 +527,21 @@ ifeq ($(uname_S),QNX)\n \tHAVE_STRINGS_H = YesPlease\n \tNEEDS_SOCKET = YesPlease\n \tNO_FNMATCH_CASEFOLD = YesPlease\n-\tNO_GETPAGESIZE = YesPlease\n \tNO_ICONV = YesPlease\n \tNO_MEMMEM = YesPlease\n-\tNO_MKDTEMP = YesPlease\n-\tNO_MKSTEMPS = YesPlease\n \tNO_NSEC = YesPlease\n-\tNO_PTHREADS = YesPlease\n \tNO_R_TO_GCC_LINKER = YesPlease\n-\tNO_STRCASESTR = YesPlease\n \tNO_STRLCPY = YesPlease\n+\t# All QNX 6.x versions have pthread functions in libc\n+\t# and getpagesize. Leave mkstemps/mkdtemp/strcasestr for\n+\t# autodetection.\n+\tifeq ($(shell expr \"$(uname_R)\" : '6\\.[0-9]\\.[0-9]'),5)\n+\t\tPTHREAD_LIBS = \"\"\n+\telse\n+\t\tNO_PTHREADS = YesPlease\n+\t\tNO_GETPAGESIZE = YesPlease\n+\t\tNO_STRCASESTR = YesPlease\n+\t\tNO_MKSTEMPS = YesPlease\n+\t\tNO_MKDTEMP = YesPlease\n+\tendif\n endif\ndiff --git a/git-compat-util.h b/git-compat-util.h\nindex b7eaaa9..f59d696 100644\n--- a/git-compat-util.h\n+++ b/git-compat-util.h\n@@ -113,7 +113,11 @@\n #include <time.h>\n #include <signal.h>\n #ifndef USE_WILDMATCH\n+#if defined(NO_FNMATCH) || defined(NO_FNMATCH_CASEFOLD)\n+#include <fnmatch_gnu.h>\n+#else\n #include <fnmatch.h>\n+#endif /* NO_FNMATCH */\n #endif\n #include <assert.h>\n #include <regex.h>\ndiff --git a/pager.c b/pager.c\nindex c1ecf65..bed627a 100644\n--- a/pager.c\n+++ b/pager.c\n@@ -81,7 +81,11 @@ void setup_pager(void)\n \tpager_process.argv = pager_argv;\n \tpager_process.in = -1;\n \tif (!getenv(\"LESS\")) {\n+\t#if !defined(__QNXNTO__)\n \t\tstatic const char *env[] = { \"LESS=FRSX\", NULL };\n+\t#else\n+\t\tstatic const char *env[] = { \"LESS=rS\", NULL };\n+\t#endif /* __QNXNTO__ */\n \t\tpager_process.env = env;\n \t}\n \tif (start_command(&pager_process))\ndiff --git a/tar.h b/tar_git.h\nsimilarity index 100%\nrename from tar.h\nrename to tar_git.h\n"},{"id":"210169","messageId":"CAHXAxrMgJf2C3dAe1O2DW5qFYFnCDhbQNmpnvK4ZOduJnqwQWg@mail.gmail.com","threadId":"32990","inReplyTo":"CAHXAxrMRxKKiEarSQ0fCLt6-zyS=52B+kmZMLDf8SQAGzGbjjQ@mail.gmail.com","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Mike Gorchak","fromEmail":"mike.gorchak.qnx@gmail.com","sentAt":"2013-02-24T07:36:27Z","receivedAt":"2013-02-24T07:36:27Z","isPatch":true,"sender":{"key":"mike.gorchak.qnx@gmail.com","avatar":"https://avatars.githubusercontent.com/u/1337711?v=4"},"body":"Hello,\n\n> Here is a small patch with QNX build improvements:\n>\n> 1) Rename tar.h to tar_git.h. Latest QNX versions have system tar.h\n> header according to\n> http://pubs.opengroup.org/onlinepubs/009696699/basedefs/tar.h.html ,\n> to avoid inclusion of another tar.h, original header was renamed.\n> 2) Rename fnmatch.h to fnmatch_gnu.h and fnmatch.c to fnmatch_gnu.c to\n> avoid inclusion of system fnmatch.h header in case if -I/usr/include\n> path is specified before -Icompat/fnmatch. Which is common situation.\n> 3) pager.c - default \"less\" invocation flags were changed for QNX 6,x\n> platform, since QNX has incompatible with GNU coreutils version of\n> \"less\" utility.\n> 4) config.mak.uname - a) do not override mkdtemp/mkstemps/strcasestr\n> detection, since newer QNX version could contain such functions. Let\n> to configure decide what is present in the system. b) getpagesize()\n> function is existing under QNX, c) QNX has pthread functions in the\n> libc, so do not define NO_PTHREAD macro.\n\nSorry, in the previous post the patch was not inlined.\n\ndiff --git a/Makefile b/Makefile\nindex ba8e243..f6dd2eb 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -726,7 +726,7 @@ LIB_H += streaming.h\n LIB_H += string-list.h\n LIB_H += submodule.h\n LIB_H += tag.h\n-LIB_H += tar.h\n+LIB_H += tar_git.h\n LIB_H += thread-utils.h\n LIB_H += transport.h\n LIB_H += tree-walk.h\n@@ -1256,12 +1256,12 @@ endif\n ifdef NO_FNMATCH\n \tCOMPAT_CFLAGS += -Icompat/fnmatch\n \tCOMPAT_CFLAGS += -DNO_FNMATCH\n-\tCOMPAT_OBJS += compat/fnmatch/fnmatch.o\n+\tCOMPAT_OBJS += compat/fnmatch/fnmatch_gnu.o\n else\n ifdef NO_FNMATCH_CASEFOLD\n \tCOMPAT_CFLAGS += -Icompat/fnmatch\n \tCOMPAT_CFLAGS += -DNO_FNMATCH_CASEFOLD\n-\tCOMPAT_OBJS += compat/fnmatch/fnmatch.o\n+\tCOMPAT_OBJS += compat/fnmatch/fnmatch_gnu.o\n endif\n endif\n ifdef USE_WILDMATCH\ndiff --git a/archive-tar.c b/archive-tar.c\nindex 719b629..8e24336 100644\n--- a/archive-tar.c\n+++ b/archive-tar.c\n@@ -2,7 +2,7 @@\n  * Copyright (c) 2005, 2006 Rene Scharfe\n  */\n #include \"cache.h\"\n-#include \"tar.h\"\n+#include \"tar_git.h\"\n #include \"archive.h\"\n #include \"streaming.h\"\n #include \"run-command.h\"\ndiff --git a/builtin/tar-tree.c b/builtin/tar-tree.c\nindex 3f1e701..b0e4551 100644\n--- a/builtin/tar-tree.c\n+++ b/builtin/tar-tree.c\n@@ -3,7 +3,7 @@\n  */\n #include \"cache.h\"\n #include \"commit.h\"\n-#include \"tar.h\"\n+#include \"tar_git.h\"\n #include \"builtin.h\"\n #include \"quote.h\"\n\ndiff --git a/compat/fnmatch/fnmatch.c b/compat/fnmatch/fnmatch_gnu.c\nsimilarity index 99%\nrename from compat/fnmatch/fnmatch.c\nrename to compat/fnmatch/fnmatch_gnu.c\nindex 5ef0685..f9a5e5b 100644\n--- a/compat/fnmatch/fnmatch.c\n+++ b/compat/fnmatch/fnmatch_gnu.c\n@@ -26,7 +26,7 @@\n #endif\n\n #include <errno.h>\n-#include <fnmatch.h>\n+#include <fnmatch_gnu.h>\n #include <ctype.h>\n\n #if HAVE_STRING_H || defined _LIBC\ndiff --git a/compat/fnmatch/fnmatch.h b/compat/fnmatch/fnmatch_gnu.h\nsimilarity index 100%\nrename from compat/fnmatch/fnmatch.h\nrename to compat/fnmatch/fnmatch_gnu.h\ndiff --git a/config.mak.uname b/config.mak.uname\nindex 8743a6d..2d42ffe 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -527,14 +527,21 @@ ifeq ($(uname_S),QNX)\n \tHAVE_STRINGS_H = YesPlease\n \tNEEDS_SOCKET = YesPlease\n \tNO_FNMATCH_CASEFOLD = YesPlease\n-\tNO_GETPAGESIZE = YesPlease\n \tNO_ICONV = YesPlease\n \tNO_MEMMEM = YesPlease\n-\tNO_MKDTEMP = YesPlease\n-\tNO_MKSTEMPS = YesPlease\n \tNO_NSEC = YesPlease\n-\tNO_PTHREADS = YesPlease\n \tNO_R_TO_GCC_LINKER = YesPlease\n-\tNO_STRCASESTR = YesPlease\n \tNO_STRLCPY = YesPlease\n+\t# All QNX 6.x versions have pthread functions in libc\n+\t# and getpagesize. Leave mkstemps/mkdtemp/strcasestr for\n+\t# autodetection.\n+\tifeq ($(shell expr \"$(uname_R)\" : '6\\.[0-9]\\.[0-9]'),5)\n+\t\tPTHREAD_LIBS = \"\"\n+\telse\n+\t\tNO_PTHREADS = YesPlease\n+\t\tNO_GETPAGESIZE = YesPlease\n+\t\tNO_STRCASESTR = YesPlease\n+\t\tNO_MKSTEMPS = YesPlease\n+\t\tNO_MKDTEMP = YesPlease\n+\tendif\n endif\ndiff --git a/git-compat-util.h b/git-compat-util.h\nindex b7eaaa9..f59d696 100644\n--- a/git-compat-util.h\n+++ b/git-compat-util.h\n@@ -113,7 +113,11 @@\n #include <time.h>\n #include <signal.h>\n #ifndef USE_WILDMATCH\n+#if defined(NO_FNMATCH) || defined(NO_FNMATCH_CASEFOLD)\n+#include <fnmatch_gnu.h>\n+#else\n #include <fnmatch.h>\n+#endif /* NO_FNMATCH */\n #endif\n #include <assert.h>\n #include <regex.h>\ndiff --git a/pager.c b/pager.c\nindex c1ecf65..bed627a 100644\n--- a/pager.c\n+++ b/pager.c\n@@ -81,7 +81,11 @@ void setup_pager(void)\n \tpager_process.argv = pager_argv;\n \tpager_process.in = -1;\n \tif (!getenv(\"LESS\")) {\n+\t#if !defined(__QNXNTO__)\n \t\tstatic const char *env[] = { \"LESS=FRSX\", NULL };\n+\t#else\n+\t\tstatic const char *env[] = { \"LESS=rS\", NULL };\n+\t#endif /* __QNXNTO__ */\n \t\tpager_process.env = env;\n \t}\n \tif (start_command(&pager_process))\ndiff --git a/tar.h b/tar_git.h\nsimilarity index 100%\nrename from tar.h\nrename to tar_git.h\n"},{"id":"210172","messageId":"7vvc9i5cbw.fsf@alter.siamese.dyndns.org","threadId":"32990","inReplyTo":"CAHXAxrMgJf2C3dAe1O2DW5qFYFnCDhbQNmpnvK4ZOduJnqwQWg@mail.gmail.com","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-24T08:46:11Z","receivedAt":"2013-02-24T08:46:11Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Mike Gorchak <mike.gorchak.qnx@gmail.com> writes:\n\n> Hello,\n>\n>> Here is a small patch with QNX build improvements:\n>>\n>> 1) Rename tar.h to tar_git.h. Latest QNX versions have system tar.h\n>> header according to\n>> http://pubs.opengroup.org/onlinepubs/009696699/basedefs/tar.h.html ,\n>> to avoid inclusion of another tar.h, original header was renamed.\n>> 2) Rename fnmatch.h to fnmatch_gnu.h and fnmatch.c to fnmatch_gnu.c to\n>> avoid inclusion of system fnmatch.h header in case if -I/usr/include\n>> path is specified before -Icompat/fnmatch. Which is common situation.\n>> 3) pager.c - default \"less\" invocation flags were changed for QNX 6,x\n>> platform, since QNX has incompatible with GNU coreutils version of\n>> \"less\" utility.\n>> 4) config.mak.uname - a) do not override mkdtemp/mkstemps/strcasestr\n>> detection, since newer QNX version could contain such functions. Let\n>> to configure decide what is present in the system. b) getpagesize()\n>> function is existing under QNX, c) QNX has pthread functions in the\n>> libc, so do not define NO_PTHREAD macro.\n>\n> Sorry, in the previous post the patch was not inlined.\n\nFirst on the form.  The message lacks a proper commit log message\nand a sign-off.  Please check Documentation/SubmittingPatches and\nalso compare the message I am responding to with recent patch\nsubmission messages from other people on the list.\n\nAs to the substance, I am fairly negative about the approach this\npatch takes, especially the rationale it uses for #2 above.  It goes\ndirectly against the spirit of having compat/ directory in the first\nplace to have -I/usr/include _before_ -Icompat/anything and that,\nnot the names of header files in compat/ directory, is the root\ncause of the problem you are seeing, I think.\n"},{"id":"210180","messageId":"CAHXAxrO_AeLoHw6TaVkDZsS=J6Ro+qEuMs4rbyCoFuHAGT+6vg@mail.gmail.com","threadId":"32990","inReplyTo":"7vvc9i5cbw.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Mike Gorchak","fromEmail":"mike.gorchak.qnx@gmail.com","sentAt":"2013-02-24T14:12:27Z","receivedAt":"2013-02-24T14:12:27Z","isPatch":true,"sender":{"key":"mike.gorchak.qnx@gmail.com","avatar":"https://avatars.githubusercontent.com/u/1337711?v=4"},"body":">>> 2) Rename fnmatch.h to fnmatch_gnu.h and fnmatch.c to fnmatch_gnu.c to\n>>> avoid inclusion of system fnmatch.h header in case if -I/usr/include\n>>> path is specified before -Icompat/fnmatch. Which is common situation.\n> As to the substance, I am fairly negative about the approach this\n> patch takes, especially the rationale it uses for #2 above.  It goes\n> directly against the spirit of having compat/ directory in the first\n> place to have -I/usr/include _before_ -Icompat/anything and that,\n> not the names of header files in compat/ directory, is the root\n> cause of the problem you are seeing, I think.\n\nIt is quite common to pass CPPFLAGS/CFLAGS/CXXFLAGS before configure\nscript to make a custom build. For example, I have specific set of\nheaders which belong to another version of libc, so I pass directory\nwhere these headers are located right before configure script:\n\nCFLAGS=\"-I/usr/qnxVVV/include\" LDFLAGS=\"-I/usr/qnxVVV/lib\" ./configure\n--prefix=/usr\n\nAbout this you can read by typing ./configure --help. This approach\nworks for every autoconf-based project, except for GIT due to headers\ncollision. I do not know anything about \"spirit of compat/ directory\",\nbut if it interferes with the normal build process, it means something\nis wrong. But it is up to you.\n\nThanks.\n"},{"id":"210193","messageId":"7vvc9h4d7c.fsf@alter.siamese.dyndns.org","threadId":"32990","inReplyTo":"CAHXAxrO_AeLoHw6TaVkDZsS=J6Ro+qEuMs4rbyCoFuHAGT+6vg@mail.gmail.com","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-24T21:24:55Z","receivedAt":"2013-02-24T21:24:55Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Mike Gorchak <mike.gorchak.qnx@gmail.com> writes:\n\n> CFLAGS=\"-I/usr/qnxVVV/include\" LDFLAGS=\"-I/usr/qnxVVV/lib\" ./configure\n> --prefix=/usr\n\nOh, I didn't notice that, but the definition of ALL_CFLAGS may be\nwhat is wrong.  It allows CFLAGS to come before BASIC_CFLAGS that\nadds -Icompat/, which goes against the whole point of having\nreplacement headers in compat/ directory.\n"},{"id":"210235","messageId":"7vtxp0zwyn.fsf@alter.siamese.dyndns.org","threadId":"32990","inReplyTo":"7vvc9h4d7c.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-25T07:14:40Z","receivedAt":"2013-02-25T07:14:40Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> Mike Gorchak <mike.gorchak.qnx@gmail.com> writes:\n>\n>> CFLAGS=\"-I/usr/qnxVVV/include\" LDFLAGS=\"-I/usr/qnxVVV/lib\" ./configure\n>> --prefix=/usr\n>\n> Oh, I didn't notice that, but the definition of ALL_CFLAGS may be\n> what is wrong.  It allows CFLAGS to come before BASIC_CFLAGS that\n> adds -Icompat/, which goes against the whole point of having\n> replacement headers in compat/ directory.\n\nAlso, in general, as the end-user input, we would want to make it\ntake the precedence, so that CFLAGS can be used to override the\ndefault command line; e.g. we may have -DMACRO=value on BASIC_CFLAGS\nor others on ALL_CFLAGS, and let the users who know what they are\ndoing use CFLAGS=-DMACRO=anothervalue to override it.\n\nSwapping the order between CFLAGS and BASIC_CFLAGS in ALL_CFLAGS may\nbe a good change for that reason as well.\n\nIn any case, I won't take a patch to rename source files left and\nright only to work around name collisions with random system header\nfiles we do not even use ourselves, unless/until I know we have\ntried all the other saner approaches first.  That's a workaround,\nnot a solution.\n"},{"id":"210237","messageId":"CAHXAxrOADzLckUz70e9T7EU7aWnuGadSswCU21KV2rK=sjwosg@mail.gmail.com","threadId":"32990","inReplyTo":"7vtxp0zwyn.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] Improve QNX support in GIT","fromName":"Mike Gorchak","fromEmail":"mike.gorchak.qnx@gmail.com","sentAt":"2013-02-25T08:30:43Z","receivedAt":"2013-02-25T08:30:43Z","isPatch":true,"sender":{"key":"mike.gorchak.qnx@gmail.com","avatar":"https://avatars.githubusercontent.com/u/1337711?v=4"},"body":"Hi Junio,\n\n> Swapping the order between CFLAGS and BASIC_CFLAGS in ALL_CFLAGS may\n> be a good change for that reason as well.\n\nThis sounds very reasonable.\n\n> In any case, I won't take a patch to rename source files left and\n> right only to work around name collisions with random system header\n> files we do not even use ourselves, unless/until I know we have\n> tried all the other saner approaches first.  That's a workaround,\n> not a solution.\n\nOk, no problem, I will create another patch which alter CFLAGS order.\n"}]}