diff options
author | Kai Sommerfeld <kso@openoffice.org> | 2009-12-10 10:15:20 +0100 |
---|---|---|
committer | Kai Sommerfeld <kso@openoffice.org> | 2009-12-10 10:15:20 +0100 |
commit | 4b6c864b8b01f6791b8e2336b9a86818ae46834b (patch) | |
tree | 164bc5e253f8ac69a259eea0b6512886b3e84818 | |
parent | 7e18ce5d10a108b74695e359e3462603d015a170 (diff) | |
parent | 2f0d4473749af8df0e2acd611f18c9c72bb769f3 (diff) |
merged with DEV300_m67
-rw-r--r-- | icu/icu4c-4_0_1-src.patch (renamed from icu/icu-4.0.patch) | 0 | ||||
-rwxr-xr-x | icu/icuversion.mk | 2 | ||||
-rw-r--r-- | icu/makefile.mk | 4 | ||||
-rw-r--r-- | moz/extractfiles.mk | 12 | ||||
-rw-r--r-- | moz/makefile.mk | 10 | ||||
-rw-r--r-- | moz/patches/dtoa.patch | 237 | ||||
-rw-r--r-- | moz/patches/respect_disable_pango.patch | 54 | ||||
-rw-r--r-- | moz/zipped/makefile.mk | 2 | ||||
-rw-r--r-- | neon/makefile.mk | 7 | ||||
-rw-r--r-- | neon/neon.patch | 123 | ||||
-rw-r--r-- | neon/neon_exports_unix.patch | 289 | ||||
-rw-r--r-- | neon/neon_exports_win.patch | 295 | ||||
-rw-r--r-- | neon/prj/d.lst | 6 | ||||
-rw-r--r-- | nss/dtoa.patch | 110 | ||||
-rw-r--r-- | nss/makefile.mk | 6 | ||||
-rw-r--r-- | nss/nss.patch | 30 | ||||
-rw-r--r-- | zlib/zlib-1.1.4.patch | 2 |
17 files changed, 1124 insertions, 65 deletions
diff --git a/icu/icu-4.0.patch b/icu/icu4c-4_0_1-src.patch index 172d6244634c..172d6244634c 100644 --- a/icu/icu-4.0.patch +++ b/icu/icu4c-4_0_1-src.patch diff --git a/icu/icuversion.mk b/icu/icuversion.mk index 7c0389093fb3..e0b599f94c4a 100755 --- a/icu/icuversion.mk +++ b/icu/icuversion.mk @@ -33,5 +33,5 @@ ICU_MAJOR=4 # minor ICU_MINOR=0 # micro -ICU_MICRO=0 +ICU_MICRO=1 diff --git a/icu/makefile.mk b/icu/makefile.mk index 7503a4c18dbc..c452443c889d 100644 --- a/icu/makefile.mk +++ b/icu/makefile.mk @@ -42,9 +42,9 @@ TARGET=so_icu .INCLUDE : icuversion.mk .IF "$(ICU_MICRO)"!="0" -TARFILE_NAME=icu-$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) +TARFILE_NAME=icu4c-$(ICU_MAJOR)_$(ICU_MINOR)_$(ICU_MICRO)-src .ELSE -TARFILE_NAME=icu-$(ICU_MAJOR).$(ICU_MINOR) +TARFILE_NAME=icu4c-$(ICU_MAJOR)_$(ICU_MINOR)-src .ENDIF TARFILE_ROOTDIR=icu diff --git a/moz/extractfiles.mk b/moz/extractfiles.mk index dfb14afa8a3e..c98bf8574e73 100644 --- a/moz/extractfiles.mk +++ b/moz/extractfiles.mk @@ -408,11 +408,10 @@ $(MISC)$/build$/so_moz_include_files: $(INCCOM)$/nsBuildID.h .ENDIF $(TOUCH) $@ .IF "$(ENABLE_NSS_MODULE)"=="YES" - +$(foreach,dir,$(NSS_INCLUDE_LIST) $(RENAME:s/+//) $(INCLUDE_DIR)$/$(dir) \ - $(INCLUDE_DIR)$/$(dir)_remove_me &&) \ - echo >& $(NULLDEV) - $(foreach,dir,$(NSS_INCLUDE_LIST) rm -r -f $(INCLUDE_DIR)$/$(dir)_remove_me &&) \ - echo >& $(NULLDEV) + +$(foreach,dir,$(NSS_INCLUDE_LIST) $(RENAME:s/+//) $(INCLUDE_DIR)$/$(dir) $(INCLUDE_DIR)$/$(dir)_remove_me &&) echo >& $(NULLDEV) + $(foreach,dir,$(NSS_INCLUDE_LIST) rm -rf $(INCLUDE_DIR)$/$(dir)_remove_me &&) echo >& $(NULLDEV) + -$(MKDIR) $(OUT)$/inc.nss + cd $(OUT)$/inc.nss && $(foreach,dir,$(NSS_INCLUDE_LIST) $(GNUCOPY) -pRL $(SOLARINCDIR)$/mozilla/$(dir) . &&) echo >& $(NULLDEV) .ENDIF # On UNX the rules for so_moz_runtime_files copy files into the same directory @@ -464,3 +463,6 @@ $(MISC)$/CREATETARBALL: extract_mozab_files .ENDIF cd $(LB) && zip -r ..$/zipped$/$(MOZTARGET)lib.zip * cd $(INCCOM) && zip -r ..$/zipped$/$(MOZTARGET)inc.zip * +.IF "$(ENABLE_NSS_MODULE)"=="YES" + cd $(OUT)$/inc.nss && zip -r ..$/zipped$/$(MOZTARGET)inc.zip * +.ENDIF diff --git a/moz/makefile.mk b/moz/makefile.mk index 3722229bf74d..0aabda002e2e 100644 --- a/moz/makefile.mk +++ b/moz/makefile.mk @@ -84,7 +84,10 @@ MOZILLA_VERSION=1.1.14 TARFILE_NAME=seamonkey-$(MOZILLA_VERSION).source TARFILE_ROOTDIR=mozilla -PATCH_FILES=seamonkey-source-$(MOZILLA_VERSION).patch +PATCH_FILES = \ + seamonkey-source-$(MOZILLA_VERSION).patch \ + patches/dtoa.patch \ + patches/respect_disable_pango.patch \ # This file is needed for the W32 build when BUILD_MOZAB is set # (currently only vc8/vs2005 is supported when BUILD_MOZAB is set) @@ -131,6 +134,7 @@ MOZILLA_CONFIGURE_FLAGS += --disable-tests \ --disable-image-encoders \ --disable-plugins \ --disable-printing \ + --disable-pango \ --enable-extensions="pref" #.IF "$(GUI)"!="WNT" @@ -183,6 +187,10 @@ CXXFLAGS+=-m64 .ENDIF .EXPORT : CXXFLAGS .ENDIF # "$(COMNAME)"=="sunpro5" +.IF "$(COM)$(OS)$(CPUNAME)" == "GCCLINUXPOWERPC64" +CXXFLAGS:=-mminimal-toc +.EXPORT : CXXFLAGS +.ENDIF .ENDIF .IF "$(OS)"=="SOLARIS" && "$(CPUNAME)"=="SPARC" && "$(CPU)"=="U" diff --git a/moz/patches/dtoa.patch b/moz/patches/dtoa.patch new file mode 100644 index 000000000000..fce3be38b10b --- /dev/null +++ b/moz/patches/dtoa.patch @@ -0,0 +1,237 @@ +--- misc/mozilla/nsprpub/pr/src/misc/prdtoa.c 20 Mar 2009 03:41:21 -0000 4.7 ++++ misc/build/mozilla/nsprpub/pr/src/misc/prdtoa.c 15 Sep 2009 00:10:20 -0000 +@@ -169,17 +169,22 @@ void _PR_CleanupDtoa(void) + * Llong, #define #ULLong to be the corresponding unsigned type. + * #define KR_headers for old-style C function headers. + * #define Bad_float_h if your system lacks a float.h or if it does not + * define some or all of DBL_DIG, DBL_MAX_10_EXP, DBL_MAX_EXP, + * FLT_RADIX, FLT_ROUNDS, and DBL_MAX. + * #define MALLOC your_malloc, where your_malloc(n) acts like malloc(n) + * if memory is available and otherwise does something you deem + * appropriate. If MALLOC is undefined, malloc will be invoked +- * directly -- and assumed always to succeed. ++ * directly -- and assumed always to succeed. Similarly, if you ++ * want something other than the system's free() to be called to ++ * recycle memory acquired from MALLOC, #define FREE to be the ++ * name of the alternate routine. (FREE or free is only called in ++ * pathological cases, e.g., in a dtoa call after a dtoa return in ++ * mode 3 with thousands of digits requested.) + * #define Omit_Private_Memory to omit logic (added Jan. 1998) for making + * memory allocations from a private pool of memory when possible. + * When used, the private pool is PRIVATE_MEM bytes long: 2304 bytes, + * unless #defined to be a different length. This default length + * suffices to get rid of MALLOC calls except for unusual cases, + * such as decimal-to-binary conversion of a very long string of + * digits. The longest string dtoa can return is about 751 bytes + * long. For conversions by strtod of strings of 800 digits and +@@ -553,17 +558,17 @@ extern double rnd_prod(double, double), + #endif + #endif /* NO_LONG_LONG */ + + #ifndef MULTIPLE_THREADS + #define ACQUIRE_DTOA_LOCK(n) /*nothing*/ + #define FREE_DTOA_LOCK(n) /*nothing*/ + #endif + +-#define Kmax 15 ++#define Kmax 7 + + struct + Bigint { + struct Bigint *next; + int k, maxwds, sign, wds; + ULong x[1]; + }; + +@@ -581,27 +586,28 @@ Balloc + { + int x; + Bigint *rv; + #ifndef Omit_Private_Memory + unsigned int len; + #endif + + ACQUIRE_DTOA_LOCK(0); +- if (rv = freelist[k]) { ++ /* The k > Kmax case does not need ACQUIRE_DTOA_LOCK(0), */ ++ /* but this case seems very unlikely. */ ++ if (k <= Kmax && (rv = freelist[k])) + freelist[k] = rv->next; +- } + else { + x = 1 << k; + #ifdef Omit_Private_Memory + rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(ULong)); + #else + len = (sizeof(Bigint) + (x-1)*sizeof(ULong) + sizeof(double) - 1) + /sizeof(double); +- if (pmem_next - private_mem + len <= PRIVATE_mem) { ++ if (k <= Kmax && pmem_next - private_mem + len <= PRIVATE_mem) { + rv = (Bigint*)pmem_next; + pmem_next += len; + } + else + rv = (Bigint*)MALLOC(len*sizeof(double)); + #endif + rv->k = k; + rv->maxwds = x; +@@ -615,20 +621,28 @@ Balloc + Bfree + #ifdef KR_headers + (v) Bigint *v; + #else + (Bigint *v) + #endif + { + if (v) { +- ACQUIRE_DTOA_LOCK(0); +- v->next = freelist[v->k]; +- freelist[v->k] = v; +- FREE_DTOA_LOCK(0); ++ if (v->k > Kmax) ++#ifdef FREE ++ FREE((void*)v); ++#else ++ free((void*)v); ++#endif ++ else { ++ ACQUIRE_DTOA_LOCK(0); ++ v->next = freelist[v->k]; ++ freelist[v->k] = v; ++ FREE_DTOA_LOCK(0); ++ } + } + } + + #define Bcopy(x,y) memcpy((char *)&x->sign, (char *)&y->sign, \ + y->wds*sizeof(Long) + 2*sizeof(int)) + + static Bigint * + multadd +--- misc/mozilla/js/src/jsdtoa.c 2 Sep 2007 22:20:41 -0000 3.41 ++++ misc/build/mozilla/js/src/jsdtoa.c 18 Sep 2009 16:15:13 -0000 +@@ -145,17 +145,22 @@ + * and if "unsigned Llong" does not work as an unsigned version of + * Llong, #define #ULLong to be the corresponding unsigned type. + * #define Bad_float_h if your system lacks a float.h or if it does not + * define some or all of DBL_DIG, DBL_MAX_10_EXP, DBL_MAX_EXP, + * FLT_RADIX, FLT_ROUNDS, and DBL_MAX. + * #define MALLOC your_malloc, where your_malloc(n) acts like malloc(n) + * if memory is available and otherwise does something you deem + * appropriate. If MALLOC is undefined, malloc will be invoked +- * directly -- and assumed always to succeed. ++ * directly -- and assumed always to succeed. Similarly, if you ++ * want something other than the system's free() to be called to ++ * recycle memory acquired from MALLOC, #define FREE to be the ++ * name of the alternate routine. (FREE or free is only called in ++ * pathological cases, e.g., in a dtoa call after a dtoa return in ++ * mode 3 with thousands of digits requested.) + * #define Omit_Private_Memory to omit logic (added Jan. 1998) for making + * memory allocations from a private pool of memory when possible. + * When used, the private pool is PRIVATE_MEM bytes long: 2000 bytes, + * unless #defined to be a different length. This default length + * suffices to get rid of MALLOC calls except for unusual cases, + * such as decimal-to-binary conversion of a very long string of + * digits. + * #define INFNAN_CHECK on IEEE systems to cause strtod to check for +@@ -320,17 +325,17 @@ static PRLock *freelist_lock; + JS_END_MACRO + #define RELEASE_DTOA_LOCK() PR_Unlock(freelist_lock) + #else + #undef MULTIPLE_THREADS + #define ACQUIRE_DTOA_LOCK() /*nothing*/ + #define RELEASE_DTOA_LOCK() /*nothing*/ + #endif + +-#define Kmax 15 ++#define Kmax 7 + + struct Bigint { + struct Bigint *next; /* Free list link */ + int32 k; /* lg2(maxwds) */ + int32 maxwds; /* Number of words allocated for x */ + int32 sign; /* Zero if positive, 1 if negative. Ignored by most Bigint routines! */ + int32 wds; /* Actual number of words. If value is nonzero, the most significant word must be nonzero. */ + ULong x[1]; /* wds words of number in little endian order */ +@@ -400,26 +405,26 @@ static Bigint *Balloc(int32 k) + + #ifdef ENABLE_OOM_TESTING + if (++allocationNum == desiredFailure) { + printf("Forced Failing Allocation number %d\n", allocationNum); + return NULL; + } + #endif + +- if ((rv = freelist[k]) != NULL) ++ if (k <= Kmax && (rv = freelist[k]) != NULL) + freelist[k] = rv->next; + if (rv == NULL) { + x = 1 << k; + #ifdef Omit_Private_Memory + rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(ULong)); + #else + len = (sizeof(Bigint) + (x-1)*sizeof(ULong) + sizeof(double) - 1) + /sizeof(double); +- if (pmem_next - private_mem + len <= PRIVATE_mem) { ++ if (k <= Kmax && pmem_next - private_mem + len <= PRIVATE_mem) { + rv = (Bigint*)pmem_next; + pmem_next += len; + } + else + rv = (Bigint*)MALLOC(len*sizeof(double)); + #endif + if (!rv) + return NULL; +@@ -428,18 +433,26 @@ static Bigint *Balloc(int32 k) + } + rv->sign = rv->wds = 0; + return rv; + } + + static void Bfree(Bigint *v) + { + if (v) { +- v->next = freelist[v->k]; +- freelist[v->k] = v; ++ if (v->k > Kmax) ++#ifdef FREE ++ FREE((void*)v); ++#else ++ free((void*)v); ++#endif ++ else { ++ v->next = freelist[v->k]; ++ freelist[v->k] = v; ++ } + } + } + + #define Bcopy(x,y) memcpy((char *)&x->sign, (char *)&y->sign, \ + y->wds*sizeof(Long) + 2*sizeof(int32)) + + /* Return b*m + a. Deallocate the old b. Both a and m must be between 0 and + * 65535 inclusive. NOTE: old b is deallocated on memory failure. +--- misc/mozilla/js/src/jsdtoa.c 22 Sep 2009 06:16:27 -0000 3.42 ++++ misc/build/mozilla/js/src/jsdtoa.c 15 Oct 2009 10:34:38 -0000 +@@ -405,19 +405,19 @@ static Bigint *Balloc(int32 k) + + #ifdef ENABLE_OOM_TESTING + if (++allocationNum == desiredFailure) { + printf("Forced Failing Allocation number %d\n", allocationNum); + return NULL; + } + #endif + +- if (k <= Kmax && (rv = freelist[k]) != NULL) ++ if (k <= Kmax && (rv = freelist[k])) + freelist[k] = rv->next; +- if (rv == NULL) { ++ else { + x = 1 << k; + #ifdef Omit_Private_Memory + rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(ULong)); + #else + len = (sizeof(Bigint) + (x-1)*sizeof(ULong) + sizeof(double) - 1) + /sizeof(double); + if (k <= Kmax && pmem_next - private_mem + len <= PRIVATE_mem) { + rv = (Bigint*)pmem_next; diff --git a/moz/patches/respect_disable_pango.patch b/moz/patches/respect_disable_pango.patch new file mode 100644 index 000000000000..07a83e9dd40a --- /dev/null +++ b/moz/patches/respect_disable_pango.patch @@ -0,0 +1,54 @@ +--- misc/mozilla/gfx/src/gtk/nsDeviceContextGTK.cpp 2006-02-28 15:55:35.000000000 +0100 ++++ misc/build/mozilla/gfx/src/gtk/nsDeviceContextGTK.cpp 2009-11-13 15:12:24.000000000 +0100 +@@ -66,10 +66,12 @@ + #endif /* MOZ_WIDGET_GTK */ + + #ifdef MOZ_WIDGET_GTK2 ++#ifdef MOZ_ENABLE_PANGO + #include <pango/pango.h> + #include <pango/pangox.h> + #include <pango/pango-fontmap.h> + #endif ++#endif + + #ifdef MOZ_ENABLE_XFT + #include "nsFontMetricsUtils.h" +@@ -963,9 +965,11 @@ + #ifdef MOZ_WIDGET_GTK2 + + #ifdef MOZ_ENABLE_COREXFONTS ++#ifdef MOZ_ENABLE_PANGO + static void xlfd_from_pango_font_description(GtkWidget *aWidget, + const PangoFontDescription *aFontDesc, + nsString& aFontName); ++#endif + #endif /* MOZ_ENABLE_COREXFONTS */ + + nsresult +@@ -997,10 +1001,12 @@ + #endif /* MOZ_ENABLE_XFT */ + + #ifdef MOZ_ENABLE_COREXFONTS ++#ifdef MOZ_ENABLE_PANGO + // if name already set by Xft, do nothing + if (!aFont->name.Length()) { + xlfd_from_pango_font_description(aWidget, desc, aFont->name); + } ++#endif /* MOZ_ENABLE_PANGO */ + #endif /* MOZ_ENABLE_COREXFONTS */ + aFont->weight = pango_font_description_get_weight(desc); + +@@ -1104,6 +1110,7 @@ + #endif /* MOZ_ENABLE_XFT */ + + #if defined(MOZ_WIDGET_GTK2) && defined(MOZ_ENABLE_COREXFONTS) ++#ifdef MOZ_ENABLE_PANGO + // xlfd_from_pango_font_description copied from vte, which was + // written by nalin@redhat.com, and added some codes. + static void +@@ -1226,4 +1233,5 @@ + g_free(spec); + g_object_unref(font); + } ++#endif + #endif /* MOZ_WIDGET_GTK2 && MOZ_ENABLE_COREXFONTS */ diff --git a/moz/zipped/makefile.mk b/moz/zipped/makefile.mk index a7b3ea846e9b..b4f85f93e748 100644 --- a/moz/zipped/makefile.mk +++ b/moz/zipped/makefile.mk @@ -43,7 +43,7 @@ TARGET=moz_unzip .IF "$(PREBUILD_MOZAB)" == "" || "$(SYSTEM_MOZILLA)" == "YES" || "$(WITH_MOZILLA)" == "NO" dummy: - @echo "No need to unpack the prebuild mozab packages" + @echo "No need to unpack the prebuilt mozab packages" .ELSE # unpack mozab zips .INCLUDE : target.mk diff --git a/neon/makefile.mk b/neon/makefile.mk index f25fefd69935..367e5ffc0a46 100644 --- a/neon/makefile.mk +++ b/neon/makefile.mk @@ -54,6 +54,13 @@ NEON_NAME=neon-0.28.2 TARFILE_NAME=$(NEON_NAME) PATCH_FILES=neon.patch + +.IF "$(GUI)"=="WNT" + PATCH_FILES+=neon_exports_win.patch +.ELSE + PATCH_FILES+=neon_exports_unix.patch +.ENDIF + ADDITIONAL_FILES=src$/makefile.mk src$/config.h src$/ne_ntlm.h src$/ne_ntlm.c BUILD_DIR=src diff --git a/neon/neon.patch b/neon/neon.patch index 59924a9a605b..8257b64a7758 100644 --- a/neon/neon.patch +++ b/neon/neon.patch @@ -499,6 +499,7 @@ +PRJNAME=neon +TARGET=neon +LIBTARGET=NO ++USE_DEFFILE=TRUE +EXTERNAL_WARNINGS_NOT_ERRORS := TRUE + +# --- Settings ----------------------------------------------------- @@ -512,7 +513,19 @@ +.IF "$(SYSTEM_LIBXML)" == "YES" +CFLAGS+=-DSYSTEM_LIBXML $(LIBXML_CFLAGS) +.ELSE -+CFLAGS+=-I$(SOLARINCDIR)$/external$/zlib ++LIBXMLINCDIR=external$/libxml ++CFLAGS+= -I$(SOLARINCDIR)$/$(LIBXMLINCDIR) ++.ENDIF ++ ++.IF "$(SYSTEM_OPENSSL)" == "YES" ++CFLAGS+= $(OPENSSL_CFLAGS) ++.ENDIF ++ ++.IF "$(SYSTEM_ZLIB)" == "YES" ++CFLAGS+=-DSYSTEM_ZLIB ++.ELSE ++ZLIBINCDIR=external$/zlib ++CFLAGS+=-I$(SOLARINCDIR)$/$(ZLIBINCDIR) +.ENDIF + +SLOFILES= \ @@ -547,12 +560,38 @@ +# $(SLO)$/ne_gnutls.obj \ +# $(SLO)$/ne_stubssl.obj + -+LIB1TARGET=$(SLB)$/$(TARGET).lib -+LIB1ARCHIV=$(LB)$/lib$(TARGET).a -+LIB1OBJFILES=$(SLOFILES) ++SHL1OBJS=$(SLOFILES) ++SHL1TARGET=$(TARGET) ++SHL1VERSIONMAP=exports.map ++SHL1IMPLIB=i$(TARGET) ++ ++SHL1STDLIBS+= $(LIBXML2LIB) \ ++ $(ZLIB3RDLIB) ++ ++.IF "$(GUI)"=="WNT" ++ SHL1STDLIBS+= $(WSOCK32LIB) ++ .IF "$(WINDOWS_VISTA_PSDK)" != "" ++ SHL1STDLIBS+= $(WS2_32LIB) ++ .ENDIF ++ SHL1STDLIBS+= $(OPENSSLLIB) ++.ELSE # WNT ++ .IF "$(OS)"=="SOLARIS" ++ SHL1STDLIBS+= -lnsl -lsocket -ldl ++ .ENDIF # SOLARIS ++ .IF "$(OS)"=="OS2" ++ SHL1STDLIBS+= pthread.lib libz.lib ++ .ENDIF # OS2 ++ .IF "$(SYSTEM_OPENSSL)"=="YES" ++ SHL1STDLIBS+= $(OPENSSLLIB) ++ .ELSE ++ SHL1STDLIBS+= $(OPENSSLLIBST) ++ .ENDIF ++.ENDIF # WNT ++ ++SHL1DEF=$(MISC)$/$(SHL1TARGET).def + +# --- Targets ------------------------------------------------------ -+ ++DEF1NAME=$(SHL1TARGET) +.INCLUDE : target.mk --- misc/neon-0.28.2/src/ne_auth.c 2008-02-29 17:30:12.000000000 +0100 +++ misc/build/neon-0.28.2/src/ne_auth.c 2009-11-26 23:41:57.000000000 +0100 @@ -594,8 +633,8 @@ static int get_credentials(auth_session *sess, ne_buffer **errmsg, int attempt, struct auth_challenge *chall, char *pwbuf) { -- if (chall->handler->creds(chall->handler->userdata, sess->realm, -+ if (chall->handler->creds(chall->handler->userdata, chall->protocol->name, sess->realm, +- if (chall->handler->creds(chall->handler->userdata, sess->realm, ++ if (chall->handler->creds(chall->handler->userdata, chall->protocol->name, sess->realm, chall->handler->attempt++, sess->username, pwbuf) == 0) { return 0; } else { @@ -603,11 +642,11 @@ int ntlm = ne_strcasecmp(parms->protocol->name, "NTLM") == 0; int status; char *response = NULL; -- +- + char password[NE_ABUFSIZ]; + NE_DEBUG(NE_DBG_HTTPAUTH, "auth: SSPI challenge.\n"); -- +- + if (!sess->sspi_context) { ne_uri uri = {0}; @@ -617,7 +656,7 @@ } } + -+ /* Authentification needs more than one http request. ++ /* Authentification needs more than one http request. + * As long as authentification in progress use the existing credentials. + * Otherwise get new credentials.*/ + if (!parms->opaque) @@ -637,7 +676,7 @@ +#ifdef HAVE_NTLM + -+static char *request_ntlm(auth_session *sess, struct auth_request *request) ++static char *request_ntlm(auth_session *sess, struct auth_request *request) +{ + char *token = ne_ntlm_getRequestToken(sess->ntlm_context); + if (token) { @@ -651,12 +690,12 @@ + +static int ntlm_challenge(auth_session *sess, int attempt, + struct auth_challenge *parms, -+ ne_buffer **errmsg) ++ ne_buffer **errmsg) +{ + int status; -+ ++ + NE_DEBUG(NE_DBG_HTTPAUTH, "auth: NTLM challenge.\n"); -+ ++ + if (!parms->opaque && (!sess->ntlm_context || (attempt > 1))) { + char password[NE_ABUFSIZ]; + @@ -674,7 +713,7 @@ + } + + status = ne_ntlm_create_context(&sess->ntlm_context, -+ sess->username, ++ sess->username, + password); + if (status) { + return status; @@ -689,7 +728,7 @@ + return 0; +} +#endif /* HAVE_NTLM */ -+ ++ + /* Examine a digest challenge: return 0 if it is a valid Digest challenge, * else non-zero. */ @@ -827,7 +866,7 @@ +++ misc/build/neon-0.28.2/src/ne_ntlm.c 2009-11-26 23:41:57.000000000 +0100 @@ -1 +1,703 @@ -dummy -+/* ++/* + Handling of NTLM Authentication + Copyright (C) 2003, Daniel Stenberg <daniel@haxx.se> + Copyright (C) 2009, Kai Sommerfeld <kso@openoffice.org> @@ -836,7 +875,7 @@ + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. -+ ++ + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU @@ -850,7 +889,7 @@ +*/ + +/* NTLM details: -+ ++ + http://davenport.sourceforge.net/ntlm.html + http://www.innovation.ch/java/ntlm.html + @@ -1058,8 +1097,8 @@ + memcpy(ctx->nonce, &buffer[24], 8); + + /* at index decimal 20, there's a 32bit NTLM flag field */ -+ -+ if (buffer) ne_free(buffer); ++ ++ if (buffer) ne_free(buffer); + } + else { + if(ctx->state >= NTLMSTATE_TYPE1) @@ -1145,7 +1184,7 @@ + + if (len > 14) + len = 14; -+ ++ + for (i=0; i<len; i++) + pw[i] = toupper(password[i]); + @@ -1159,7 +1198,7 @@ + setup_des_key(pw, DESKEY(ks)); + DES_ecb_encrypt((DES_cblock *)magic, (DES_cblock *)lmbuffer, + DESKEY(ks), DES_ENCRYPT); -+ ++ + setup_des_key(pw+7, DESKEY(ks)); + DES_ecb_encrypt((DES_cblock *)magic, (DES_cblock *)(lmbuffer+8), + DESKEY(ks), DES_ENCRYPT); @@ -1213,13 +1252,13 @@ + if(!ctx->user || !ctx->passwd) + /* no user, no auth */ + return 0; /* OK */ -+ ++ + switch(ctx->state) { + case NTLMSTATE_TYPE1: + default: /* for the weird cases we (re)start here */ + hostoff = 32; + domoff = hostoff + hostlen; -+ ++ + /* Create and send a type-1 message: + + Index Description Content @@ -1272,7 +1311,7 @@ + ctx->requestToken = ne_base64(ntlmbuf, size); + + break; -+ ++ + case NTLMSTATE_TYPE2: + /* We received the type-2 already, create a type-3 message: + @@ -1290,7 +1329,7 @@ + 52 (64) start of data block + + */ -+ ++ + { + int lmrespoff; + int ntrespoff; @@ -1340,25 +1379,25 @@ + "%c%c" /* NT-response allocated space */ + "%c%c" /* NT-response offset */ + "%c%c" /* 2 zeroes */ -+ ++ + "%c%c" /* domain length */ + "%c%c" /* domain allocated space */ + "%c%c" /* domain name offset */ + "%c%c" /* 2 zeroes */ -+ ++ + "%c%c" /* user length */ + "%c%c" /* user allocated space */ + "%c%c" /* user offset */ + "%c%c" /* 2 zeroes */ -+ ++ + "%c%c" /* host length */ + "%c%c" /* host allocated space */ + "%c%c" /* host offset */ + "%c%c%c%c%c%c" /* 6 zeroes */ -+ ++ + "\xff\xff" /* message length */ + "%c%c" /* 2 zeroes */ -+ ++ + "\x01\x82" /* flags */ + "%c%c" /* 2 zeroes */ + @@ -1375,7 +1414,7 @@ + SHORTPAIR(0x18), + SHORTPAIR(lmrespoff), + 0x0, 0x0, -+ ++ +#ifdef USE_NTRESPONSES + SHORTPAIR(0x18), /* NT-response length, twice */ + SHORTPAIR(0x18), @@ -1395,12 +1434,12 @@ + SHORTPAIR(userlen), + SHORTPAIR(useroff), + 0x0, 0x0, -+ ++ + SHORTPAIR(hostlen), + SHORTPAIR(hostlen), + SHORTPAIR(hostoff), + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -+ ++ + 0x0, 0x0, + + 0x0, 0x0); @@ -1428,7 +1467,7 @@ + } + +#ifdef USE_NTRESPONSES -+ if(size < ((int)sizeof(ntlmbuf) - 0x18)) { ++ if(size < ((int)sizeof(ntlmbuf) - 0x18)) { + memcpy(&ntlmbuf[size], ntresp, 0x18); + size += 0x18; + } @@ -1504,7 +1543,7 @@ + if (context->state <= NTLMSTATE_TYPE3) { + ntlm ntlmstatus = ne_input_ntlm(context, responseToken); + -+ if (ntlmstatus != NTLM_FINE) { ++ if (ntlmstatus != NTLM_FINE) { + return -1; + } + } @@ -1534,7 +1573,7 @@ +++ misc/build/neon-0.28.2/src/ne_ntlm.h 2009-11-26 23:41:57.000000000 +0100 @@ -1 +1,44 @@ -dummy -+/* ++/* + Handling of NTLM Authentication + Copyright (C) 2009, Kai Sommerfeld <kso@openoffice.org> + @@ -1542,7 +1581,7 @@ + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. -+ ++ + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU @@ -1594,12 +1633,12 @@ return -1; } -+ return 0; ++ return 0; +} + +/* + * Simplification wrapper arround AcquireCredentialsHandle as most of -+ * the parameters do not change. ++ * the parameters do not change. + */ +static int acquireCredentialsHandleForUsername(CredHandle * credentials, char *package, const char *username, const char *password) +{ @@ -1652,7 +1691,7 @@ /* Reset any existing context since we are starting over */ resetContext(sspiContext); -+ ++ + if (strlen(username) != 0) { + if (acquireCredentialsHandleForUsername + (&sspiContext->credentials, sspiContext->mechanism, username, password) != SEC_E_OK) { diff --git a/neon/neon_exports_unix.patch b/neon/neon_exports_unix.patch new file mode 100644 index 000000000000..4e8098eb1eeb --- /dev/null +++ b/neon/neon_exports_unix.patch @@ -0,0 +1,289 @@ +--- misc/neon-0.28.2/src/exports.map 2009-09-29 10:28:13.531250000 +0200 ++++ misc/build/neon-0.28.2/src/exports.map 2009-09-21 12:16:53.453125000 +0200 +@@ -0,0 +1,286 @@ ++NEON_0_28_2 { ++ global: ++ ne__negotiate_ssl; ++ ne__ssl_exit; ++ ne__ssl_init; ++ ne_ssl_cert_cmp; ++ ne_ssl_cert_digest; ++ ne_ssl_cert_export; ++ ne_ssl_cert_free; ++ ne_ssl_cert_identity; ++ ne_ssl_cert_import; ++ ne_ssl_cert_issuer; ++ ne_ssl_cert_read; ++ ne_ssl_cert_signedby; ++ ne_ssl_cert_subject; ++ ne_ssl_cert_validity_time; ++ ne_ssl_cert_write; ++ ne_ssl_clicert_decrypt; ++ ne_ssl_clicert_encrypted; ++ ne_ssl_clicert_free; ++ ne_ssl_clicert_name; ++ ne_ssl_clicert_owner; ++ ne_ssl_clicert_read; ++ ne_ssl_context_create; ++ ne_ssl_context_destroy; ++ ne_ssl_context_keypair; ++ ne_ssl_context_set_flag; ++ ne_ssl_context_set_verify; ++ ne_ssl_context_trustcert; ++ ne_ssl_dname_cmp; ++ ne_ssl_readable_dname; ++ ne_ssl_set_clicert; ++ ne_ssl_trust_default_ca; ++ ne_xml_dispatch_request; ++ ne_xml_parse_response; ++ ne_xml_create; ++ ne_xml_currentline; ++ ne_xml_destroy; ++ ne_xml_doc_encoding; ++ ne_xml_failed; ++ ne_xml_get_attr; ++ ne_xml_get_error; ++ ne_xml_mapid; ++ ne_xml_parse; ++ ne_xml_parse_v; ++ ne_xml_push_handler; ++ ne_xml_resolve_nspace; ++ ne_xml_set_error; ++ ne_debug; ++ ne_debug_init; ++ ne_debug_mask; ++ ne_debug_stream; ++ ne_has_support; ++ ne_parse_statusline; ++ ne_version_match; ++ ne_version_string; ++ ne_path_childof; ++ ne_path_compare; ++ ne_path_escape; ++ ne_path_has_trailing_slash; ++ ne_path_parent; ++ ne_path_unescape; ++ ne_uri_cmp; ++ ne_uri_copy; ++ ne_uri_defaultport; ++ ne_uri_free; ++ ne_uri_parse; ++ ne_uri_resolve; ++ ne_uri_unparse; ++ ne_base64; ++ ne_buffer_altered; ++ ne_buffer_append; ++ ne_buffer_clear; ++ ne_buffer_concat; ++ ne_buffer_create; ++ ne_buffer_destroy; ++ ne_buffer_finish; ++ ne_buffer_grow; ++ ne_buffer_ncreate; ++ ne_buffer_snprintf; ++ ne_buffer_zappend; ++ ne_concat; ++ ne_qtoken; ++ ne_shave; ++ ne_snprintf; ++ ne_strcasecmp; ++ ne_strclean; ++ ne_strerror; ++ ne_strncasecmp; ++ ne_token; ++ ne_tolower_array; ++ ne_unbase64; ++ ne_vsnprintf; ++ ne__sock_sslsock; ++ ne_addr_destroy; ++ ne_addr_error; ++ ne_addr_first; ++ ne_addr_next; ++ ne_addr_resolve; ++ ne_addr_result; ++ ne_iaddr_cmp; ++ ne_iaddr_free; ++ ne_iaddr_make; ++ ne_iaddr_print; ++ ne_iaddr_reverse; ++ ne_iaddr_typeof; ++ ne_sock_accept; ++ ne_sock_accept_ssl; ++ ne_sock_block; ++ ne_sock_cipher; ++ ne_sock_close; ++ ne_sock_connect; ++ ne_sock_connect_ssl; ++ ne_sock_connect_timeout; ++ ne_sock_create; ++ ne_sock_error; ++ ne_sock_exit; ++ ne_sock_fd; ++ ne_sock_fullread; ++ ne_sock_fullwrite; ++ ne_sock_init; ++ ne_sock_peek; ++ ne_sock_peer; ++ ne_sock_prebind; ++ ne_sock_read; ++ ne_sock_read_timeout; ++ ne_sock_readline; ++ ne_sock_sessid; ++ ne__ssl_set_verify_err; ++ ne_close_connection; ++ ne_fill_proxy_uri; ++ ne_fill_server_uri; ++ ne_get_error; ++ ne_get_scheme; ++ ne_get_server_hostport; ++ ne_get_session_flag; ++ ne_hook_close_conn; ++ ne_hook_create_request; ++ ne_hook_destroy_request; ++ ne_hook_destroy_session; ++ ne_hook_post_headers; ++ ne_hook_post_send; ++ ne_hook_pre_send; ++ ne_session_create; ++ ne_session_destroy; ++ ne_session_proxy; ++ ne_set_addrlist; ++ ne_set_connect_timeout; ++ ne_set_error; ++ ne_set_localaddr; ++ ne_set_notifier; ++ ne_set_progress; ++ ne_set_read_timeout; ++ ne_set_session_flag; ++ ne_set_session_private; ++ ne_set_useragent; ++ ne_ssl_cert_validity; ++ ne_ssl_provide_clicert; ++ ne_ssl_set_verify; ++ ne_ssl_trust_cert; ++ ne_unhook_close_conn; ++ ne_unhook_create_request; ++ ne_unhook_destroy_request; ++ ne_unhook_destroy_session; ++ ne_unhook_post_headers; ++ ne_unhook_post_send; ++ ne_unhook_pre_send; ++ ne_version_pre_http11; ++ ne_accept_2xx; ++ ne_accept_always; ++ ne_add_request_header; ++ ne_add_response_body_reader; ++ ne_begin_request; ++ ne_discard_response; ++ ne_end_request; ++ ne_get_request_flag; ++ ne_get_request_private; ++ ne_get_response_header; ++ ne_get_session; ++ ne_get_session_private; ++ ne_get_status; ++ ne_print_request_header; ++ ne_read_response_block; ++ ne_read_response_to_fd; ++ ne_request_create; ++ ne_request_destroy; ++ ne_request_dispatch; ++ ne_response_header_iterate; ++ ne_set_request_body_buffer; ++ ne_set_request_body_fd; ++ ne_set_request_body_provider; ++ ne_set_request_flag; ++ ne_set_request_private; ++ ne_redirect_location; ++ ne_redirect_register; ++ ne_propfind_allprop; ++ ne_propfind_create; ++ ne_propfind_current_private; ++ ne_propfind_destroy; ++ ne_propfind_get_parser; ++ ne_propfind_get_request; ++ ne_propfind_named; ++ ne_propfind_set_private; ++ ne_propnames; ++ ne_proppatch; ++ ne_propset_iterate; ++ ne_propset_lang; ++ ne_propset_private; ++ ne_propset_status; ++ ne_propset_value; ++ ne_simple_propfind; ++ ne_ascii_to_md5; ++ ne_md5_create_ctx; ++ ne_md5_destroy_ctx; ++ ne_md5_dup_ctx; ++ ne_md5_finish_ascii; ++ ne_md5_finish_ctx; ++ ne_md5_process_block; ++ ne_md5_process_bytes; ++ ne_md5_read_ctx; ++ ne_md5_reset_ctx; ++ ne_md5_stream; ++ ne_md5_to_ascii; ++ ne_lock; ++ ne_lock_copy; ++ ne_lock_create; ++ ne_lock_destroy; ++ ne_lock_discover; ++ ne_lock_free; ++ ne_lock_refresh; ++ ne_lock_using_parent; ++ ne_lock_using_resource; ++ ne_lockstore_add; ++ ne_lockstore_create; ++ ne_lockstore_destroy; ++ ne_lockstore_findbyuri; ++ ne_lockstore_first; ++ ne_lockstore_next; ++ ne_lockstore_register; ++ ne_lockstore_remove; ++ ne_unlock; ++ ne_i18n_init; ++ ne_asctime_parse; ++ ne_httpdate_parse; ++ ne_iso8601_parse; ++ ne_rfc1036_parse; ++ ne_rfc1123_date; ++ ne_rfc1123_parse; ++ ne_decompress_destroy; ++ ne_decompress_reader; ++ ne_add_depth_header; ++ ne_copy; ++ ne_delete; ++ ne_get; ++ ne_get_content_type; ++ ne_get_range; ++ ne_getmodtime; ++ ne_mkcol; ++ ne_move; ++ ne_options; ++ ne_options2; ++ ne_post; ++ ne_put; ++ ne_add_proxy_auth; ++ ne_add_server_auth; ++ ne_forget_auth; ++ ne_set_proxy_auth; ++ ne_set_server_auth; ++ ne_calloc; ++ ne_malloc; ++ ne_oom_callback; ++ ne_realloc; ++ ne_strdup; ++ ne_strndup; ++ ne_acl_set; ++ ne_207_create; ++ ne_207_destroy; ++ ne_207_get_current_propstat; ++ ne_207_get_current_response; ++ ne_207_set_propstat_handlers; ++ ne_207_set_response_handlers; ++ ne_accept_207; ++ ne_simple_request; ++ local: ++ *; ++}; diff --git a/neon/neon_exports_win.patch b/neon/neon_exports_win.patch new file mode 100644 index 000000000000..479f03a9d6bc --- /dev/null +++ b/neon/neon_exports_win.patch @@ -0,0 +1,295 @@ +--- misc/neon-0.28.2/src/exports.map 2009-09-29 10:28:13.531250000 +0200 ++++ misc/build/neon-0.28.2/src/exports.map 2009-09-21 12:16:53.453125000 +0200 +@@ -0,0 +1,292 @@ ++NEON_0_28_2 { ++ global: ++ ne_sspi_authenticate; ++ ne_sspi_clear_context; ++ ne_sspi_create_context; ++ ne_sspi_deinit; ++ ne_sspi_destroy_context; ++ ne_sspi_init; ++ ne__negotiate_ssl; ++ ne__ssl_exit; ++ ne__ssl_init; ++ ne_ssl_cert_cmp; ++ ne_ssl_cert_digest; ++ ne_ssl_cert_export; ++ ne_ssl_cert_free; ++ ne_ssl_cert_identity; ++ ne_ssl_cert_import; ++ ne_ssl_cert_issuer; ++ ne_ssl_cert_read; ++ ne_ssl_cert_signedby; ++ ne_ssl_cert_subject; ++ ne_ssl_cert_validity_time; ++ ne_ssl_cert_write; ++ ne_ssl_clicert_decrypt; ++ ne_ssl_clicert_encrypted; ++ ne_ssl_clicert_free; ++ ne_ssl_clicert_name; ++ ne_ssl_clicert_owner; ++ ne_ssl_clicert_read; ++ ne_ssl_context_create; ++ ne_ssl_context_destroy; ++ ne_ssl_context_keypair; ++ ne_ssl_context_set_flag; ++ ne_ssl_context_set_verify; ++ ne_ssl_context_trustcert; ++ ne_ssl_dname_cmp; ++ ne_ssl_readable_dname; ++ ne_ssl_set_clicert; ++ ne_ssl_trust_default_ca; ++ ne_xml_dispatch_request; ++ ne_xml_parse_response; ++ ne_xml_create; ++ ne_xml_currentline; ++ ne_xml_destroy; ++ ne_xml_doc_encoding; ++ ne_xml_failed; ++ ne_xml_get_attr; ++ ne_xml_get_error; ++ ne_xml_mapid; ++ ne_xml_parse; ++ ne_xml_parse_v; ++ ne_xml_push_handler; ++ ne_xml_resolve_nspace; ++ ne_xml_set_error; ++ ne_debug; ++ ne_debug_init; ++ ne_debug_mask; ++ ne_debug_stream; ++ ne_has_support; ++ ne_parse_statusline; ++ ne_version_match; ++ ne_version_string; ++ ne_path_childof; ++ ne_path_compare; ++ ne_path_escape; ++ ne_path_has_trailing_slash; ++ ne_path_parent; ++ ne_path_unescape; ++ ne_uri_cmp; ++ ne_uri_copy; ++ ne_uri_defaultport; ++ ne_uri_free; ++ ne_uri_parse; ++ ne_uri_resolve; ++ ne_uri_unparse; ++ ne_base64; ++ ne_buffer_altered; ++ ne_buffer_append; ++ ne_buffer_clear; ++ ne_buffer_concat; ++ ne_buffer_create; ++ ne_buffer_destroy; ++ ne_buffer_finish; ++ ne_buffer_grow; ++ ne_buffer_ncreate; ++ ne_buffer_snprintf; ++ ne_buffer_zappend; ++ ne_concat; ++ ne_qtoken; ++ ne_shave; ++ ne_snprintf; ++ ne_strcasecmp; ++ ne_strclean; ++ ne_strerror; ++ ne_strncasecmp; ++ ne_token; ++ ne_tolower_array; ++ ne_unbase64; ++ ne_vsnprintf; ++ ne__sock_sslsock; ++ ne_addr_destroy; ++ ne_addr_error; ++ ne_addr_first; ++ ne_addr_next; ++ ne_addr_resolve; ++ ne_addr_result; ++ ne_iaddr_cmp; ++ ne_iaddr_free; ++ ne_iaddr_make; ++ ne_iaddr_print; ++ ne_iaddr_reverse; ++ ne_iaddr_typeof; ++ ne_sock_accept; ++ ne_sock_accept_ssl; ++ ne_sock_block; ++ ne_sock_cipher; ++ ne_sock_close; ++ ne_sock_connect; ++ ne_sock_connect_ssl; ++ ne_sock_connect_timeout; ++ ne_sock_create; ++ ne_sock_error; ++ ne_sock_exit; ++ ne_sock_fd; ++ ne_sock_fullread; ++ ne_sock_fullwrite; ++ ne_sock_init; ++ ne_sock_peek; ++ ne_sock_peer; ++ ne_sock_prebind; ++ ne_sock_read; ++ ne_sock_read_timeout; ++ ne_sock_readline; ++ ne_sock_sessid; ++ ne__ssl_set_verify_err; ++ ne_close_connection; ++ ne_fill_proxy_uri; ++ ne_fill_server_uri; ++ ne_get_error; ++ ne_get_scheme; ++ ne_get_server_hostport; ++ ne_get_session_flag; ++ ne_hook_close_conn; ++ ne_hook_create_request; ++ ne_hook_destroy_request; ++ ne_hook_destroy_session; ++ ne_hook_post_headers; ++ ne_hook_post_send; ++ ne_hook_pre_send; ++ ne_session_create; ++ ne_session_destroy; ++ ne_session_proxy; ++ ne_set_addrlist; ++ ne_set_connect_timeout; ++ ne_set_error; ++ ne_set_localaddr; ++ ne_set_notifier; ++ ne_set_progress; ++ ne_set_read_timeout; ++ ne_set_session_flag; ++ ne_set_session_private; ++ ne_set_useragent; ++ ne_ssl_cert_validity; ++ ne_ssl_provide_clicert; ++ ne_ssl_set_verify; ++ ne_ssl_trust_cert; ++ ne_unhook_close_conn; ++ ne_unhook_create_request; ++ ne_unhook_destroy_request; ++ ne_unhook_destroy_session; ++ ne_unhook_post_headers; ++ ne_unhook_post_send; ++ ne_unhook_pre_send; ++ ne_version_pre_http11; ++ ne_accept_2xx; ++ ne_accept_always; ++ ne_add_request_header; ++ ne_add_response_body_reader; ++ ne_begin_request; ++ ne_discard_response; ++ ne_end_request; ++ ne_get_request_flag; ++ ne_get_request_private; ++ ne_get_response_header; ++ ne_get_session; ++ ne_get_session_private; ++ ne_get_status; ++ ne_print_request_header; ++ ne_read_response_block; ++ ne_read_response_to_fd; ++ ne_request_create; ++ ne_request_destroy; ++ ne_request_dispatch; ++ ne_response_header_iterate; ++ ne_set_request_body_buffer; ++ ne_set_request_body_fd; ++ ne_set_request_body_provider; ++ ne_set_request_flag; ++ ne_set_request_private; ++ ne_redirect_location; ++ ne_redirect_register; ++ ne_propfind_allprop; ++ ne_propfind_create; ++ ne_propfind_current_private; ++ ne_propfind_destroy; ++ ne_propfind_get_parser; ++ ne_propfind_get_request; ++ ne_propfind_named; ++ ne_propfind_set_private; ++ ne_propnames; ++ ne_proppatch; ++ ne_propset_iterate; ++ ne_propset_lang; ++ ne_propset_private; ++ ne_propset_status; ++ ne_propset_value; ++ ne_simple_propfind; ++ ne_ascii_to_md5; ++ ne_md5_create_ctx; ++ ne_md5_destroy_ctx; ++ ne_md5_dup_ctx; ++ ne_md5_finish_ascii; ++ ne_md5_finish_ctx; ++ ne_md5_process_block; ++ ne_md5_process_bytes; ++ ne_md5_read_ctx; ++ ne_md5_reset_ctx; ++ ne_md5_stream; ++ ne_md5_to_ascii; ++ ne_lock; ++ ne_lock_copy; ++ ne_lock_create; ++ ne_lock_destroy; ++ ne_lock_discover; ++ ne_lock_free; ++ ne_lock_refresh; ++ ne_lock_using_parent; ++ ne_lock_using_resource; ++ ne_lockstore_add; ++ ne_lockstore_create; ++ ne_lockstore_destroy; ++ ne_lockstore_findbyuri; ++ ne_lockstore_first; ++ ne_lockstore_next; ++ ne_lockstore_register; ++ ne_lockstore_remove; ++ ne_unlock; ++ ne_i18n_init; ++ ne_asctime_parse; ++ ne_httpdate_parse; ++ ne_iso8601_parse; ++ ne_rfc1036_parse; ++ ne_rfc1123_date; ++ ne_rfc1123_parse; ++ ne_decompress_destroy; ++ ne_decompress_reader; ++ ne_add_depth_header; ++ ne_copy; ++ ne_delete; ++ ne_get; ++ ne_get_content_type; ++ ne_get_range; ++ ne_getmodtime; ++ ne_mkcol; ++ ne_move; ++ ne_options; ++ ne_options2; ++ ne_post; ++ ne_put; ++ ne_add_proxy_auth; ++ ne_add_server_auth; ++ ne_forget_auth; ++ ne_set_proxy_auth; ++ ne_set_server_auth; ++ ne_calloc; ++ ne_malloc; ++ ne_oom_callback; ++ ne_realloc; ++ ne_strdup; ++ ne_strndup; ++ ne_acl_set; ++ ne_207_create; ++ ne_207_destroy; ++ ne_207_get_current_propstat; ++ ne_207_get_current_response; ++ ne_207_set_propstat_handlers; ++ ne_207_set_response_handlers; ++ ne_accept_207; ++ ne_simple_request; ++ local: ++ *; ++}; diff --git a/neon/prj/d.lst b/neon/prj/d.lst index c9cf72163a44..a6c269e96600 100644 --- a/neon/prj/d.lst +++ b/neon/prj/d.lst @@ -2,5 +2,7 @@ mkdir: %_DEST%\inc%_EXT%\external mkdir: %_DEST%\inc%_EXT%\external\neon ..\version.mk %_DEST%\inc%_EXT%\external\neon\version.mk ..\%__SRC%\inc\ne_*.h %_DEST%\inc%_EXT%\external\neon\ne_*.h -..\%__SRC%\slb\neon.lib %_DEST%\lib%_EXT%\neon.lib -..\%__SRC%\lib\libneon.a %_DEST%\lib%_EXT%\libneon.a +..\%__SRC%\lib\ineon.lib %_DEST%\lib%_EXT%\ineon.lib +..\%__SRC%\bin\neon*.dll %_DEST%\bin%_EXT%\neon*.dll +..\%__SRC%\lib\libneon*.so %_DEST%\lib%_EXT%\libneon*.so +..\%__SRC%\lib\libneon*.dylib %_DEST%\lib%_EXT%\libneon*.dylib
\ No newline at end of file diff --git a/nss/dtoa.patch b/nss/dtoa.patch new file mode 100644 index 000000000000..3632df335f83 --- /dev/null +++ b/nss/dtoa.patch @@ -0,0 +1,110 @@ +--- misc/mozilla/nsprpub/pr/src/misc/prdtoa.c 20 Mar 2009 03:41:21 -0000 4.7 ++++ misc/build/mozilla/nsprpub/pr/src/misc/prdtoa.c 15 Sep 2009 00:10:20 -0000 +@@ -169,17 +169,22 @@ void _PR_CleanupDtoa(void) + * Llong, #define #ULLong to be the corresponding unsigned type. + * #define KR_headers for old-style C function headers. + * #define Bad_float_h if your system lacks a float.h or if it does not + * define some or all of DBL_DIG, DBL_MAX_10_EXP, DBL_MAX_EXP, + * FLT_RADIX, FLT_ROUNDS, and DBL_MAX. + * #define MALLOC your_malloc, where your_malloc(n) acts like malloc(n) + * if memory is available and otherwise does something you deem + * appropriate. If MALLOC is undefined, malloc will be invoked +- * directly -- and assumed always to succeed. ++ * directly -- and assumed always to succeed. Similarly, if you ++ * want something other than the system's free() to be called to ++ * recycle memory acquired from MALLOC, #define FREE to be the ++ * name of the alternate routine. (FREE or free is only called in ++ * pathological cases, e.g., in a dtoa call after a dtoa return in ++ * mode 3 with thousands of digits requested.) + * #define Omit_Private_Memory to omit logic (added Jan. 1998) for making + * memory allocations from a private pool of memory when possible. + * When used, the private pool is PRIVATE_MEM bytes long: 2304 bytes, + * unless #defined to be a different length. This default length + * suffices to get rid of MALLOC calls except for unusual cases, + * such as decimal-to-binary conversion of a very long string of + * digits. The longest string dtoa can return is about 751 bytes + * long. For conversions by strtod of strings of 800 digits and +@@ -553,17 +558,17 @@ extern double rnd_prod(double, double), + #endif + #endif /* NO_LONG_LONG */ + + #ifndef MULTIPLE_THREADS + #define ACQUIRE_DTOA_LOCK(n) /*nothing*/ + #define FREE_DTOA_LOCK(n) /*nothing*/ + #endif + +-#define Kmax 15 ++#define Kmax 7 + + struct + Bigint { + struct Bigint *next; + int k, maxwds, sign, wds; + ULong x[1]; + }; + +@@ -581,27 +586,28 @@ Balloc + { + int x; + Bigint *rv; + #ifndef Omit_Private_Memory + unsigned int len; + #endif + + ACQUIRE_DTOA_LOCK(0); +- if (rv = freelist[k]) { ++ /* The k > Kmax case does not need ACQUIRE_DTOA_LOCK(0), */ ++ /* but this case seems very unlikely. */ ++ if (k <= Kmax && (rv = freelist[k])) + freelist[k] = rv->next; +- } + else { + x = 1 << k; + #ifdef Omit_Private_Memory + rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(ULong)); + #else + len = (sizeof(Bigint) + (x-1)*sizeof(ULong) + sizeof(double) - 1) + /sizeof(double); +- if (pmem_next - private_mem + len <= PRIVATE_mem) { ++ if (k <= Kmax && pmem_next - private_mem + len <= PRIVATE_mem) { + rv = (Bigint*)pmem_next; + pmem_next += len; + } + else + rv = (Bigint*)MALLOC(len*sizeof(double)); + #endif + rv->k = k; + rv->maxwds = x; +@@ -615,20 +621,28 @@ Balloc + Bfree + #ifdef KR_headers + (v) Bigint *v; + #else + (Bigint *v) + #endif + { + if (v) { +- ACQUIRE_DTOA_LOCK(0); +- v->next = freelist[v->k]; +- freelist[v->k] = v; +- FREE_DTOA_LOCK(0); ++ if (v->k > Kmax) ++#ifdef FREE ++ FREE((void*)v); ++#else ++ free((void*)v); ++#endif ++ else { ++ ACQUIRE_DTOA_LOCK(0); ++ v->next = freelist[v->k]; ++ freelist[v->k] = v; ++ FREE_DTOA_LOCK(0); ++ } + } + } + + #define Bcopy(x,y) memcpy((char *)&x->sign, (char *)&y->sign, \ + y->wds*sizeof(Long) + 2*sizeof(int)) + + static Bigint * + multadd diff --git a/nss/makefile.mk b/nss/makefile.mk index 4ddd2b39015f..cdc7aad019bf 100644 --- a/nss/makefile.mk +++ b/nss/makefile.mk @@ -47,7 +47,9 @@ all: TARFILE_NAME=nss_3_12_4 TARFILE_ROOTDIR=mozilla -PATCH_FILES=nss.patch +PATCH_FILES=nss.patch dtoa.patch + # Note: dtoa.patch fixes https://bugzilla.mozilla.org/show_bug.cgi?id=516396. It can be removed as soon as + # we upgrade to a new NSS version which already contains this fix. .IF "$(debug)" != "" .ELSE @@ -58,7 +60,7 @@ BUILD_OPT=1 .IF "$(GUI)"=="UNX" .IF "$(OS)$(COM)"=="LINUXGCC" -.IF "$(CPU)"=="X" +.IF "$(BUILD64)"=="1" # force 64-bit buildmode USE_64:=1 .EXPORT : USE_64 diff --git a/nss/nss.patch b/nss/nss.patch index d37d892dd6b8..32831ea29d52 100644 --- a/nss/nss.patch +++ b/nss/nss.patch @@ -1,5 +1,5 @@ --- misc/mozilla/nsprpub/config/rules.mk 2009-05-02 01:08:01.000000000 +0200 -+++ misc/build/mozilla/nsprpub/config/rules.mk 2009-09-17 10:29:39.823155149 +0200 ++++ misc/build/mozilla/nsprpub/config/rules.mk 2009-10-20 17:03:24.733286198 +0200 @@ -350,7 +350,12 @@ ifdef NS_USE_GCC $(RC) $(RCFLAGS) $(filter-out -U%,$(DEFINES)) $(INCLUDES:-I%=--include-dir %) -o $@ $< @@ -15,7 +15,7 @@ @echo $(RES) finished endif --- misc/mozilla/nsprpub/configure 2009-05-08 15:12:31.000000000 +0200 -+++ misc/build/mozilla/nsprpub/configure 2009-09-17 10:31:55.064081763 +0200 ++++ misc/build/mozilla/nsprpub/configure 2009-10-20 17:03:24.759501457 +0200 @@ -3898,7 +3898,7 @@ PR_MD_CSRCS=linux.c MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' @@ -26,7 +26,7 @@ _DEBUG_FLAGS="-g -fno-inline" # most people on linux use gcc/gdb, and that # combo is not yet good at debugging inlined --- misc/mozilla/security/coreconf/Darwin.mk 2009-07-30 23:36:02.000000000 +0200 -+++ misc/build/mozilla/security/coreconf/Darwin.mk 2009-09-17 11:11:36.442683705 +0200 ++++ misc/build/mozilla/security/coreconf/Darwin.mk 2009-10-20 17:03:24.767804881 +0200 @@ -39,8 +39,12 @@ DEFAULT_COMPILER = cc @@ -43,7 +43,7 @@ ifndef CPU_ARCH --- misc/mozilla/security/coreconf/Linux.mk 2009-07-30 01:43:41.000000000 +0200 -+++ misc/build/mozilla/security/coreconf/Linux.mk 2009-09-17 10:39:40.372245066 +0200 ++++ misc/build/mozilla/security/coreconf/Linux.mk 2009-10-20 17:04:09.972612751 +0200 @@ -46,8 +46,11 @@ IMPL_STRATEGY = _PTH endif @@ -67,8 +67,22 @@ DSO_LDFLAGS = LDFLAGS += $(ARCHFLAG) +@@ -161,8 +164,13 @@ + # + CPU_TAG = _$(CPU_ARCH) + ++ifeq ($(SYSTEM_ZLIB),YES) ++# Currently (3.12.4) only the tools modutil and signtool are linked with libz ++# If USE_SYSTEM_ZLIB is not set then the tools link statically libzlib.a which ++# is also build in nss. + USE_SYSTEM_ZLIB = 1 + ZLIB_LIBS = -lz ++endif + + # The -rpath '$$ORIGIN' linker option instructs this library to search for its + # dependencies in the same directory where it resides. --- misc/mozilla/security/coreconf/SunOS5.mk 2009-06-11 02:55:32.000000000 +0200 -+++ misc/build/mozilla/security/coreconf/SunOS5.mk 2009-09-17 10:42:17.845459669 +0200 ++++ misc/build/mozilla/security/coreconf/SunOS5.mk 2009-10-20 17:03:24.786509911 +0200 @@ -89,8 +89,12 @@ # OPTIMIZER += -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer endif @@ -85,7 +99,7 @@ OS_CFLAGS += $(NOMD_OS_CFLAGS) $(ARCHFLAG) ifndef BUILD_OPT --- misc/mozilla/security/coreconf/arch.mk 2009-06-05 04:14:49.000000000 +0200 -+++ misc/build/mozilla/security/coreconf/arch.mk 2009-09-17 10:45:27.710858021 +0200 ++++ misc/build/mozilla/security/coreconf/arch.mk 2009-10-20 17:03:24.807236644 +0200 @@ -324,7 +324,12 @@ # IMPL_STRATEGY may be defined too. # @@ -101,7 +115,7 @@ ifeq (,$(filter-out WIN%,$(OS_TARGET))) ifndef BUILD_OPT --- misc/mozilla/security/coreconf/rules.mk 2009-08-11 05:23:39.000000000 +0200 -+++ misc/build/mozilla/security/coreconf/rules.mk 2009-09-17 10:48:07.361462582 +0200 ++++ misc/build/mozilla/security/coreconf/rules.mk 2009-10-20 17:03:24.815121351 +0200 @@ -355,7 +355,12 @@ ifdef NS_USE_GCC $(RC) $(filter-out -U%,$(DEFINES)) $(INCLUDES:-I%=--include-dir %) -o $@ $< @@ -117,7 +131,7 @@ @echo $(RES) finished endif --- misc/mozilla/security/nss/cmd/platlibs.mk 2009-06-18 01:01:48.000000000 +0200 -+++ misc/build/mozilla/security/nss/cmd/platlibs.mk 2009-09-17 11:08:16.697236076 +0200 ++++ misc/build/mozilla/security/nss/cmd/platlibs.mk 2009-10-20 17:03:24.831220397 +0200 @@ -41,27 +41,28 @@ ifeq ($(OS_ARCH), SunOS) ifeq ($(BUILD_SUN_PKG), 1) diff --git a/zlib/zlib-1.1.4.patch b/zlib/zlib-1.1.4.patch index 34f2fdde44ee..6b76c9114e6e 100644 --- a/zlib/zlib-1.1.4.patch +++ b/zlib/zlib-1.1.4.patch @@ -63,7 +63,7 @@ + $(SLO_X64)$/trees.obj \ + $(SLO_X64)$/zutil.obj \ + $(SLO_X64)$/unzip.obj \ -+ $(SLO)$/ioapi.obj ++ $(SLO_X64)$/ioapi.obj + +LIB1TARGET_X64=$(SLB_X64)$/$(TARGET).lib +LIB1OBJFILES_X64=$(SLOFILES_X64) |