From 9dacffc04009529b37c94de9a26420f640cf3f59 Mon Sep 17 00:00:00 2001 From: Matt Kraai Date: Tue, 18 Dec 2012 14:03:54 -0800 Subject: [PATCH 1/2] Make lock local to fetch_pack lock is only used by fetch_pack, so move it into that function. Signed-off-by: Matt Kraai Signed-off-by: Junio C Hamano --- builtin/fetch-pack.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/builtin/fetch-pack.c b/builtin/fetch-pack.c index e6443986b8..9bc10b3169 100644 --- a/builtin/fetch-pack.c +++ b/builtin/fetch-pack.c @@ -875,8 +875,6 @@ static int fetch_pack_config(const char *var, const char *value, void *cb) return git_default_config(var, value, cb); } -static struct lock_file lock; - static void fetch_pack_setup(void) { static int did_setup; @@ -1069,6 +1067,7 @@ struct ref *fetch_pack(struct fetch_pack_args *my_args, ref_cpy = do_fetch_pack(fd, ref, sought, pack_lockfile); if (args.depth > 0) { + static struct lock_file lock; struct cache_time mtime; struct strbuf sb = STRBUF_INIT; char *shallow = git_path("shallow"); From 40036bedb90aa25757c14a748a34a631c547e1d1 Mon Sep 17 00:00:00 2001 From: Matt Kraai Date: Tue, 18 Dec 2012 14:03:55 -0800 Subject: [PATCH 2/2] Port to QNX Signed-off-by: Matt Kraai Signed-off-by: Junio C Hamano --- Makefile | 21 +++++++++++++++++++++ git-compat-util.h | 6 +++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 2c1f04ff1a..a39dc834a0 100644 --- a/Makefile +++ b/Makefile @@ -80,6 +80,8 @@ all:: # # Define NO_MEMMEM if you don't have memmem. # +# Define NO_GETPAGESIZE if you don't have getpagesize. +# # Define NO_STRLCPY if you don't have strlcpy. # # Define NO_STRTOUMAX if you don't have both strtoimax and strtoumax in the @@ -1446,6 +1448,22 @@ else NO_CURL = YesPlease endif endif +ifeq ($(uname_S),QNX) + COMPAT_CFLAGS += -DSA_RESTART=0 + HAVE_STRINGS_H = YesPlease + NEEDS_SOCKET = YesPlease + NO_FNMATCH_CASEFOLD = YesPlease + NO_GETPAGESIZE = YesPlease + NO_ICONV = YesPlease + NO_MEMMEM = YesPlease + NO_MKDTEMP = YesPlease + NO_MKSTEMPS = YesPlease + NO_NSEC = YesPlease + NO_PTHREADS = YesPlease + NO_R_TO_GCC_LINKER = YesPlease + NO_STRCASESTR = YesPlease + NO_STRLCPY = YesPlease +endif -include config.mak.autogen -include config.mak @@ -1863,6 +1881,9 @@ ifdef NO_MEMMEM COMPAT_CFLAGS += -DNO_MEMMEM COMPAT_OBJS += compat/memmem.o endif +ifdef NO_GETPAGESIZE + COMPAT_CFLAGS += -DNO_GETPAGESIZE +endif ifdef INTERNAL_QSORT COMPAT_CFLAGS += -DINTERNAL_QSORT COMPAT_OBJS += compat/qsort.o diff --git a/git-compat-util.h b/git-compat-util.h index a88147b2dd..610e6b7ea4 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -75,7 +75,7 @@ # endif #elif !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && \ !defined(_M_UNIX) && !defined(__sgi) && !defined(__DragonFly__) && \ - !defined(__TANDEM) + !defined(__TANDEM) && !defined(__QNX__) #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */ #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */ #endif @@ -413,6 +413,10 @@ void *gitmemmem(const void *haystack, size_t haystacklen, const void *needle, size_t needlelen); #endif +#ifdef NO_GETPAGESIZE +#define getpagesize() sysconf(_SC_PAGESIZE) +#endif + #ifdef FREAD_READS_DIRECTORIES #ifdef fopen #undef fopen