{"thread":{"id":"32398","subject":"[PATCH v2 0/2] Port to QNX","startedAt":"2012-12-18T22:03:53Z","lastAt":"2012-12-18T22:03:55Z","messageCount":3,"participants":["Matt Kraai"],"isPatch":true,"patchVersion":2,"patchTotal":2},"messages":[{"id":"205160","messageId":"1355868235-23173-1-git-send-email-kraai@ftbfs.org","threadId":"32398","inReplyTo":null,"subject":"[PATCH v2 0/2] Port to QNX","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2012-12-18T22:03:53Z","receivedAt":"2012-12-18T22:03:53Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"This series ports Git to QNX.  It differs from the previous version in\nthat:\n\n * it's rebased on dm/port, so it narrows the scope of the lock\n   variable in builtin/fetch-pack.c instead of fetch-pack.c and uses\n   HAVE_STRINGS_H; and\n * it disables use of Pthreads, since fork(2) doesn't work once\n   Pthreads are used.\n\nThe first test suite failure occurs because getcwd(3) can return paths\ncontaining symbolic links.\n"},{"id":"205161","messageId":"1355868235-23173-2-git-send-email-kraai@ftbfs.org","threadId":"32398","inReplyTo":"1355868235-23173-1-git-send-email-kraai@ftbfs.org","subject":"[PATCH v2 1/2] Make lock local to fetch_pack","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2012-12-18T22:03:54Z","receivedAt":"2012-12-18T22:03:54Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"From: Matt Kraai <matt.kraai@amo.abbott.com>\n\nlock is only used by fetch_pack, so move it into that function.\n\nSigned-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n---\n builtin/fetch-pack.c | 3 +--\n 1 file changed, 1 insertion(+), 2 deletions(-)\n\ndiff --git a/builtin/fetch-pack.c b/builtin/fetch-pack.c\nindex e644398..9bc10b3 100644\n--- a/builtin/fetch-pack.c\n+++ b/builtin/fetch-pack.c\n@@ -875,8 +875,6 @@ static int fetch_pack_config(const char *var, const char *value, void *cb)\n \treturn git_default_config(var, value, cb);\n }\n \n-static struct lock_file lock;\n-\n static void fetch_pack_setup(void)\n {\n \tstatic int did_setup;\n@@ -1069,6 +1067,7 @@ struct ref *fetch_pack(struct fetch_pack_args *my_args,\n \tref_cpy = do_fetch_pack(fd, ref, sought, pack_lockfile);\n \n \tif (args.depth > 0) {\n+\t\tstatic struct lock_file lock;\n \t\tstruct cache_time mtime;\n \t\tstruct strbuf sb = STRBUF_INIT;\n \t\tchar *shallow = git_path(\"shallow\");\n-- \n1.8.0.2.8.gc42826d.dirty\n"},{"id":"205162","messageId":"1355868235-23173-3-git-send-email-kraai@ftbfs.org","threadId":"32398","inReplyTo":"1355868235-23173-1-git-send-email-kraai@ftbfs.org","subject":"[PATCH v2 2/2] Port to QNX","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2012-12-18T22:03:55Z","receivedAt":"2012-12-18T22:03:55Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"From: Matt Kraai <matt.kraai@amo.abbott.com>\n\nSigned-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n---\n Makefile          | 21 +++++++++++++++++++++\n git-compat-util.h |  6 +++++-\n 2 files changed, 26 insertions(+), 1 deletion(-)\n\ndiff --git a/Makefile b/Makefile\nindex 2c1f04f..a39dc83 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -80,6 +80,8 @@ all::\n #\n # Define NO_MEMMEM if you don't have memmem.\n #\n+# Define NO_GETPAGESIZE if you don't have getpagesize.\n+#\n # Define NO_STRLCPY if you don't have strlcpy.\n #\n # Define NO_STRTOUMAX if you don't have both strtoimax and strtoumax in the\n@@ -1446,6 +1448,22 @@ else\n \tNO_CURL = YesPlease\n endif\n endif\n+ifeq ($(uname_S),QNX)\n+\tCOMPAT_CFLAGS += -DSA_RESTART=0\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+endif\n \n -include config.mak.autogen\n -include config.mak\n@@ -1863,6 +1881,9 @@ ifdef NO_MEMMEM\n \tCOMPAT_CFLAGS += -DNO_MEMMEM\n \tCOMPAT_OBJS += compat/memmem.o\n endif\n+ifdef NO_GETPAGESIZE\n+\tCOMPAT_CFLAGS += -DNO_GETPAGESIZE\n+endif\n ifdef INTERNAL_QSORT\n \tCOMPAT_CFLAGS += -DINTERNAL_QSORT\n \tCOMPAT_OBJS += compat/qsort.o\ndiff --git a/git-compat-util.h b/git-compat-util.h\nindex a88147b..610e6b7 100644\n--- a/git-compat-util.h\n+++ b/git-compat-util.h\n@@ -75,7 +75,7 @@\n # endif\n #elif !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && \\\n       !defined(_M_UNIX) && !defined(__sgi) && !defined(__DragonFly__) && \\\n-      !defined(__TANDEM)\n+      !defined(__TANDEM) && !defined(__QNX__)\n #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */\n #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */\n #endif\n@@ -413,6 +413,10 @@ void *gitmemmem(const void *haystack, size_t haystacklen,\n                 const void *needle, size_t needlelen);\n #endif\n \n+#ifdef NO_GETPAGESIZE\n+#define getpagesize() sysconf(_SC_PAGESIZE)\n+#endif\n+\n #ifdef FREAD_READS_DIRECTORIES\n #ifdef fopen\n #undef fopen\n-- \n1.8.0.2.8.gc42826d.dirty\n"}]}