summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--berkeleydb/db-4.7.25.patch9
-rw-r--r--berkeleydb/makefile.mk6
-rw-r--r--bitstream_vera_fonts/fonts/ttf_dejavu/makefile.mk1
-rw-r--r--bitstream_vera_fonts/fonts/ttf_gentium/makefile.mk1
-rw-r--r--bitstream_vera_fonts/fonts/ttf_liberation/makefile.mk1
-rw-r--r--boost/makefile.mk1
-rw-r--r--cairo/cairo/makefile.mk2
-rw-r--r--cairo/pixman/makefile.mk4
-rw-r--r--curl/curl-7.19.7_mingw.patch24
-rw-r--r--curl/makefile.mk6
-rw-r--r--expat/makefile.mk1
-rw-r--r--graphite/makefile.mk1
-rw-r--r--hunspell/hunspell-1.2.8.patch632
-rw-r--r--hunspell/hunspell-consts-1.2.8.patch22
-rw-r--r--hunspell/hunspell-solaris.patch12
-rw-r--r--hunspell/hunspell-stacksmash.patch28
-rw-r--r--hunspell/hunspell-wntconfig.patch4
-rw-r--r--hunspell/makefile.mk13
-rw-r--r--icu/createmak.cfg907
-rw-r--r--icu/makefile.mk12
-rw-r--r--jpeg/makefile.mk1
-rw-r--r--libxml2/makefile.mk1
-rw-r--r--libxslt/makefile.mk1
-rw-r--r--moz/extractfiles.mk5
-rw-r--r--moz/makefile.mk14
-rw-r--r--moz/patches/arm_build_fix.patch189
-rw-r--r--neon/makefile.mk11
-rw-r--r--neon/neon.patch964
-rw-r--r--neon/neon_exports_unix.patch11
-rw-r--r--neon/neon_exports_win.patch12
-rwxr-xr-xneon/prj/build.lst2
-rw-r--r--neon/version.mk4
-rw-r--r--nss/makefile.mk5
-rw-r--r--python/makefile.mk5
-rw-r--r--saxon/makefile.mk1
-rw-r--r--stax/makefile.mk1
-rw-r--r--zlib/makefile.mk1
37 files changed, 811 insertions, 2104 deletions
diff --git a/berkeleydb/db-4.7.25.patch b/berkeleydb/db-4.7.25.patch
index c97522f62612..8cf412d23e25 100644
--- a/berkeleydb/db-4.7.25.patch
+++ b/berkeleydb/db-4.7.25.patch
@@ -646,7 +646,7 @@
+
--- misc/db-4.7.25.NC/makefile.mk 2009-07-21 11:42:40.000000000 +0200
+++ misc/build/db-4.7.25.NC/makefile.mk 2009-07-21 11:39:26.000000000 +0200
-@@ -1 +1,81 @@
+@@ -1 +1,76 @@
-dummy
+PRJ=..$/..$/..$/..
+PRJNAME=libdb47
@@ -658,11 +658,6 @@
+CFLAGS+=-GS -EHsc -Gy
+
+#LINKFLAGS!:=$(LINKFLAGS:s/NODEFAULTLIB/NOLOGO/)
-+.IF "$(USE_SHELL)"!="4nt"
-+BUILD_ACTION_SEP=;
-+.ELSE # "$(USE_SHELL)"!="4nt"
-+BUILD_ACTION_SEP=^
-+.ENDIF # "$(USE_SHELL)"!="4nt"
+
+CHILDREN= \
+ btree clib common cxx \
@@ -720,7 +715,7 @@
+ALLTAR : $(CHILDREN)
+
+$(CHILDREN) .PHONY :
-+ cd $@ $(BUILD_ACTION_SEP) $(MAKECMD) subdmake=true $(MFLAGS) $(CALLMACROS)
++ cd $@ ; $(MAKECMD) subdmake=true $(MFLAGS) $(CALLMACROS)
+
+.INCLUDE : target.mk
+
diff --git a/berkeleydb/makefile.mk b/berkeleydb/makefile.mk
index fe1208e554ab..963c61a3bbde 100644
--- a/berkeleydb/makefile.mk
+++ b/berkeleydb/makefile.mk
@@ -43,6 +43,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=db-4.7.25.NC-custom
+TARFILE_MD5=d70951c80dabecc2892c919ff5d07172
TARFILE_ROOTDIR=db-4.7.25.NC
ADDITIONAL_FILES= \
@@ -160,11 +161,6 @@ OUT2INC= \
# make use of stlport headerfiles
EXT_USE_STLPORT=TRUE
-.IF "$(USE_SHELL)"!="4nt"
-BUILD_ACTION_SEP=;
-.ELSE # "$(USE_SHELL)"!="4nt"
-BUILD_ACTION_SEP=^
-.ENDIF # "$(USE_SHELL)"!="4nt"
BUILD_DIR=
BUILD_ACTION=dmake
diff --git a/bitstream_vera_fonts/fonts/ttf_dejavu/makefile.mk b/bitstream_vera_fonts/fonts/ttf_dejavu/makefile.mk
index 87fd5a859306..12e1db5f26ad 100644
--- a/bitstream_vera_fonts/fonts/ttf_dejavu/makefile.mk
+++ b/bitstream_vera_fonts/fonts/ttf_dejavu/makefile.mk
@@ -37,6 +37,7 @@ TARGET=ttf_dejavu
# --- Files --------------------------------------------------------
TARFILE_NAME=dejavu-fonts-ttf-2.30
+TARFILE_MD5=fe5b3e2b7c4577f30dc001054365653e
TARFILE_ROOTDIR=dejavu-fonts-ttf-2.30
PATCH_FILES=
diff --git a/bitstream_vera_fonts/fonts/ttf_gentium/makefile.mk b/bitstream_vera_fonts/fonts/ttf_gentium/makefile.mk
index 2105e2f01cb5..45d5922a534b 100644
--- a/bitstream_vera_fonts/fonts/ttf_gentium/makefile.mk
+++ b/bitstream_vera_fonts/fonts/ttf_gentium/makefile.mk
@@ -37,6 +37,7 @@ TARGET=ttf_gentium
# --- Files --------------------------------------------------------
TARFILE_NAME=gentiumbasic-fonts-1.10
+TARFILE_MD5=35efabc239af896dfb79be7ebdd6e6b9
TARFILE_ROOTDIR=gentiumbasic-fonts-1.10
PATCH_FILES=
diff --git a/bitstream_vera_fonts/fonts/ttf_liberation/makefile.mk b/bitstream_vera_fonts/fonts/ttf_liberation/makefile.mk
index 4d0093ec9a71..42d611b8157f 100644
--- a/bitstream_vera_fonts/fonts/ttf_liberation/makefile.mk
+++ b/bitstream_vera_fonts/fonts/ttf_liberation/makefile.mk
@@ -37,6 +37,7 @@ TARGET=ttf_liberation
# --- Files --------------------------------------------------------
TARFILE_NAME=liberation-fonts-1.05
+TARFILE_MD5=30102daecfb3a6aa022d2691dc075180
TARFILE_ROOTDIR=liberation-fonts-1.05
PATCH_FILES=
diff --git a/boost/makefile.mk b/boost/makefile.mk
index 8601c4d12801..8c1df4e21dbc 100644
--- a/boost/makefile.mk
+++ b/boost/makefile.mk
@@ -49,6 +49,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=boost_1_39_0
+TARFILE_MD5=fcc6df1160753d0b8c835d17fdeeb0a7
PATCH_FILES=$(TARFILE_NAME).patch
CONFIGURE_DIR=
diff --git a/cairo/cairo/makefile.mk b/cairo/cairo/makefile.mk
index 2cf9de19ec0a..e0b12cc9f551 100644
--- a/cairo/cairo/makefile.mk
+++ b/cairo/cairo/makefile.mk
@@ -50,6 +50,8 @@ all:
CAIROVERSION=1.8.0
TARFILE_NAME=$(PRJNAME)-$(CAIROVERSION)
+TARFILE_MD5=4ea70ea87b47e92d318d4e7f5b940f47
+
PATCH_FILES=..$/$(TARFILE_NAME).patch
cairo_CFLAGS=$(SOLARINC)
diff --git a/cairo/pixman/makefile.mk b/cairo/pixman/makefile.mk
index c32cf906a1dd..20773c7597f8 100644
--- a/cairo/pixman/makefile.mk
+++ b/cairo/pixman/makefile.mk
@@ -50,7 +50,9 @@ all:
PIXMANVERSION=0.12.0
TARFILE_NAME=pixman-$(PIXMANVERSION)
-PATCH_FILE_NAME=..$/$(TARFILE_NAME).patch
+TARFILE_MD5=09357cc74975b01714e00c5899ea1881
+
+PATCH_FILES=..$/$(TARFILE_NAME).patch
# Note: we are building static pixman library to avoid linking problems.
# However, for Unix dynamic library must be used (especially due to 64bit issues)
diff --git a/curl/curl-7.19.7_mingw.patch b/curl/curl-7.19.7_mingw.patch
new file mode 100644
index 000000000000..b0fa6736d901
--- /dev/null
+++ b/curl/curl-7.19.7_mingw.patch
@@ -0,0 +1,24 @@
+--- misc/curl-7.19.7/lib/setup.h 2009-10-29 05:21:58.000000000 +0900
++++ misc/build/curl-7.19.7/lib/setup.h 2010-03-02 06:03:10.009500000 +0900
+@@ -40,6 +40,21 @@
+
+ #include "curl_config.h"
+
++#ifdef __MINGW32__
++#undef HAVE_DLFCN_H
++#define HAVE_GETHOSTBYADDR 1
++#define HAVE_GETHOSTBYNAME 1
++#undef HAVE_LIBZ
++#undef HAVE_NETDB_H
++#undef HAVE_POLL_H
++#undef HAVE_SYS_IOCTL_H
++#undef HAVE_SYS_POLL_H
++#undef HAVE_SYS_UIO_H
++#undef HAVE_TERMIOS_H
++#undef HAVE_TERMIO_H
++#undef HAVE_ZLIB_H
++#endif
++
+ #else /* HAVE_CONFIG_H */
+
+ #ifdef _WIN32_WCE
diff --git a/curl/makefile.mk b/curl/makefile.mk
index d129b7be2411..1fab0c301bff 100644
--- a/curl/makefile.mk
+++ b/curl/makefile.mk
@@ -42,10 +42,14 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=curl-7.19.7
+TARFILE_MD5=ecb2e37e45c9933e2a963cabe03670ab
PATCH_FILES=curl-7.19.7.patch
.IF "$(GUI)"=="WNT"
PATCH_FILES+=curl-7.19.7_win.patch
+ .IF "$(COM)"=="GCC"
+ PATCH_FILES+=curl-7.19.7_mingw.patch
+ .ENDIF
.ENDIF
@@ -96,7 +100,7 @@ curl_LIBS+=-lstdc++_s
CONFIGURE_DIR=.$/
#relative to CONFIGURE_DIR
CONFIGURE_ACTION=.$/configure
-CONFIGURE_FLAGS= --without-ssl --enable-ftp --enable-ipv6 --disable-http --disable-gopher --disable-file --disable-ldap --disable-telnet --disable-dict --build=i586-pc-mingw32 --host=i586-pc-mingw32 CC="$(curl_CC)" OBJDUMP="$(WRAPCMD) objdump" CFLAGS=-D_MT LDFLAGS="-L$(ILIB:s/;/ -L/)" LIBS="$(curl_LIBS)"
+CONFIGURE_FLAGS= --without-ssl --enable-ftp --enable-ipv6 --disable-http --disable-gopher --disable-file --disable-ldap --disable-telnet --disable-dict --build=i586-pc-mingw32 --host=i586-pc-mingw32 CC="$(curl_CC)" CPPFLAGS="$(INCLUDE)" OBJDUMP="objdump" CFLAGS=-D_MT LDFLAGS="-L$(ILIB:s/;/ -L/)" LIBS="$(curl_LIBS)"
BUILD_DIR=$(CONFIGURE_DIR)$/lib
BUILD_ACTION=make
OUT2BIN=$(BUILD_DIR)$/.libs$/libcurl*.dll
diff --git a/expat/makefile.mk b/expat/makefile.mk
index 1c2ca1a9e0f7..867e2b371558 100644
--- a/expat/makefile.mk
+++ b/expat/makefile.mk
@@ -43,6 +43,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=expat-2.0.1
+TARFILE_MD5=ee8b492592568805593f81f8cdf2a04c
ADDITIONAL_FILES=lib$/makefile.mk
PATCH_FILES=expat-2.0.1.patch \
expat-winapi.patch
diff --git a/graphite/makefile.mk b/graphite/makefile.mk
index 1f3d71748a4b..66100242bfe1 100644
--- a/graphite/makefile.mk
+++ b/graphite/makefile.mk
@@ -46,6 +46,7 @@ all:
# --- Files --------------------------------------------------------
.IF "$(ENABLE_GRAPHITE)"=="TRUE"
TARFILE_NAME=silgraphite-2.3.1
+TARFILE_MD5=d35724900f6a4105550293686688bbb3
PATCH_FILES=graphite-2.3.1.patch
# convert line-endings to avoid problems when patching
diff --git a/hunspell/hunspell-1.2.8.patch b/hunspell/hunspell-1.2.8.patch
deleted file mode 100644
index e5198f23b706..000000000000
--- a/hunspell/hunspell-1.2.8.patch
+++ /dev/null
@@ -1,632 +0,0 @@
---- misc/hunspell-1.2.8/intl/localename.c 2007-04-06 10:05:34.000000000 +0200
-+++ misc/build/hunspell-1.2.8/intl/localename.c 2008-11-01 16:30:49.000000000 +0100
-@@ -140,6 +140,9 @@
- # ifndef LANG_SINDHI
- # define LANG_SINDHI 0x59
- # endif
-+# ifndef LANG_SORBIAN
-+# define LANG_SORBIAN 0x2e
-+# endif
- # ifndef LANG_SLOVAK
- # define LANG_SLOVAK 0x1b
- # endif
---- misc/hunspell-1.2.8/src/hunspell/affixmgr.cxx 2008-11-01 08:00:41.000000000 +0100
-+++ misc/build/hunspell-1.2.8/src/hunspell/affixmgr.cxx 2008-11-01 16:30:49.000000000 +0100
-@@ -25,6 +25,10 @@
- #endif
- #endif
-
-+#ifdef OS2
-+#undef DEBUG
-+#endif
-+
- AffixMgr::AffixMgr(const char * affpath, HashMgr** ptr, int * md, const char * key)
- {
- // register hash manager and load affix data from aff file
-@@ -2133,7 +2137,7 @@
- while ((rv) && ((needaffix && TESTAFF(rv->astr, needaffix, rv->alen)) ||
- !((compoundflag && !words && TESTAFF(rv->astr, compoundflag, rv->alen)) ||
- (compoundend && !words && TESTAFF(rv->astr, compoundend, rv->alen)) ||
-- (numdefcpd && defcpd_check(&words, wnum + 1, rv, NULL,1))))) {
-+ (numdefcpd && words && defcpd_check(&words, wnum + 1, rv, NULL,1))))) {
- rv = rv->next_homonym;
- }
-
---- misc/hunspell-1.2.8/src/hunspell/affixmgr.hxx 2008-10-30 21:28:59.000000000 +0100
-+++ misc/build/hunspell-1.2.8/src/hunspell/affixmgr.hxx 2008-11-01 16:30:49.000000000 +0100
-@@ -2,9 +2,6 @@
- #define _AFFIXMGR_HXX_
-
- #ifdef MOZILLA_CLIENT
--#ifdef __SUNPRO_CC // for SunONE Studio compiler
--using namespace std;
--#endif
- #include <stdio.h>
- #else
- #include <cstdio>
---- misc/hunspell-1.2.8/src/hunspell/atypes.hxx 2008-10-29 15:30:51.000000000 +0100
-+++ misc/build/hunspell-1.2.8/src/hunspell/atypes.hxx 2008-11-01 16:30:49.000000000 +0100
-@@ -1,6 +1,8 @@
- #ifndef _ATYPES_HXX_
- #define _ATYPES_HXX_
-
-+#include <stdio.h>
-+
- #ifndef HUNSPELL_WARNING
- #ifdef HUNSPELL_WARNING_ON
- #define HUNSPELL_WARNING fprintf
---- misc/hunspell-1.2.8/src/hunspell/csutil.cxx Wed Oct 22 12:15:28 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/csutil.cxx Thu Feb 19 18:13:34 2009
-@@ -18,13 +18,13 @@
- #include "langnum.hxx"
-
- #ifdef OPENOFFICEORG
--# include <unicode/uchar.h>
-+#include <unicode/uchar.h>
- #else
--# ifndef MOZILLA_CLIENT
--# include "utf_info.cxx"
--# define UTF_LST_LEN (sizeof(utf_lst) / (sizeof(unicode_info)))
--# endif
-+#ifndef MOZILLA_CLIENT
-+#include "utf_info.cxx"
-+#define UTF_LST_LEN (sizeof(utf_lst) / (sizeof(unicode_info)))
- #endif
-+#endif
-
- #ifdef MOZILLA_CLIENT
- #include "nsCOMPtr.h"
---- misc/hunspell-1.2.8/src/hunspell/filemgr.cxx Sat Nov 1 15:09:41 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/filemgr.cxx Thu Feb 19 17:28:35 2009
-@@ -11,6 +11,7 @@
- #include <stdio.h>
- #endif
-
-+using namespace std;
- #include "filemgr.hxx"
-
- int FileMgr::fail(const char * err, const char * par) {
---- misc/hunspell-1.2.8/src/hunspell/filemgr.hxx Mon Aug 11 11:32:02 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/filemgr.hxx Thu Feb 19 13:58:01 2009
-@@ -6,7 +6,7 @@
- class FileMgr
- {
- protected:
-- FILE * fin;
-+ std::FILE * fin;
- Hunzip * hin;
- char in[BUFSIZE + 50]; // input buffer
- int fail(const char * err, const char * par);
---- misc/hunspell-1.2.8/src/hunspell/hashmgr.cxx Thu Aug 14 16:49:33 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/hashmgr.cxx Thu Feb 19 17:25:33 2009
-@@ -6,6 +6,9 @@
- #include <cstring>
- #include <cstdio>
- #include <cctype>
-+//#ifdef __SUNPRO_CC // for SunONE Studio compiler
-+//using namespace std;
-+//#endif
- #else
- #include <stdlib.h>
- #include <string.h>
-@@ -13,10 +16,6 @@
- #include <ctype.h>
- #endif
-
--#include "hashmgr.hxx"
--#include "csutil.hxx"
--#include "atypes.hxx"
--
- #ifdef MOZILLA_CLIENT
- #ifdef __SUNPRO_CC // for SunONE Studio compiler
- using namespace std;
-@@ -27,6 +26,10 @@
- #endif
- #endif
-
-+#include "hashmgr.hxx"
-+#include "csutil.hxx"
-+#include "atypes.hxx"
-+
- // build a hash table from a munched word list
-
- HashMgr::HashMgr(const char * tpath, const char * apath, const char * key)
-@@ -459,6 +462,10 @@
- }
- } else {
- al = decode_flags(&flags, ap + 1, dict);
-+ if (al == -1) {
-+ HUNSPELL_WARNING(stderr, "Can't allocate memory.\n");
-+ return 6;
-+ }
- flag_qsort(flags, 0, al);
- }
- } else {
-@@ -499,6 +506,11 @@
-
- int HashMgr::decode_flags(unsigned short ** result, char * flags, FileMgr * af) {
- int len;
-+ if (*flags == '\0') {
-+ HUNSPELL_WARNING(stderr, "error: line %d: bad flagvector\n", af->getlinenum());
-+ *result = NULL;
-+ return 0;
-+ }
- switch (flag_mode) {
- case FLAG_LONG: { // two-character flags (1x2yZz -> 1x 2y Zz)
- len = strlen(flags);
---- misc/hunspell-1.2.8/src/hunspell/hashmgr.hxx 2008-08-12 12:22:54.000000000 +0200
-+++ misc/build/hunspell-1.2.8/src/hunspell/hashmgr.hxx 2009-02-19 12:57:11.780108100 +0100
-@@ -3,6 +3,7 @@
-
- #ifndef MOZILLA_CLIENT
- #include <cstdio>
-+/* using namespace std; */
- #else
- #include <stdio.h>
- #endif
---- misc/hunspell-1.2.8/src/hunspell/hunspell.cxx Thu Oct 30 20:15:53 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/hunspell.cxx Thu Feb 19 18:13:35 2009
-@@ -1,3 +1,7 @@
-+#ifdef _MSC_VER
-+#pragma setlocale("C")
-+#endif
-+
- #include "license.hunspell"
- #include "license.myspell"
-
-@@ -11,11 +15,6 @@
- #include <stdio.h>
- #endif
-
--#include "hunspell.hxx"
--#include "hunspell.h"
--#include "config.h"
--#include "csutil.hxx"
--
- #ifndef MOZILLA_CLIENT
- #ifndef WIN32
- using namespace std;
-@@ -22,6 +21,9 @@
- #endif
- #endif
-
-+#include "hunspell.hxx"
-+#include "csutil.hxx"
-+
- Hunspell::Hunspell(const char * affpath, const char * dpath, const char * key)
- {
- encoding = NULL;
-@@ -338,7 +340,11 @@
- char wspace[MAXWORDUTF8LEN];
- w_char unicw[MAXWORDLEN];
- // Hunspell supports XML input of the simplified API (see manual)
-- if (strcmp(word, SPELL_XML) == 0) return 1;
-+ if (strncmp(word, SPELL_XML, sizeof(SPELL_XML) - 3) == 0) {
-+ if (strcmp(word, SPELL_XML) == 0) return 1; // query XML interface support
-+ return 0;
-+ }
-+
- int nc = strlen(word);
- int wl2 = 0;
- if (utf8) {
-@@ -1854,89 +1860,3 @@
- }
-
- #endif // END OF HUNSPELL_EXPERIMENTAL CODE
--
--Hunhandle *Hunspell_create(const char * affpath, const char * dpath)
--{
-- return (Hunhandle*)(new Hunspell(affpath, dpath));
--}
--
--Hunhandle *Hunspell_create_key(const char * affpath, const char * dpath,
-- const char * key)
--{
-- return (Hunhandle*)(new Hunspell(affpath, dpath, key));
--}
--
--void Hunspell_destroy(Hunhandle *pHunspell)
--{
-- delete (Hunspell*)(pHunspell);
--}
--
--int Hunspell_spell(Hunhandle *pHunspell, const char *word)
--{
-- return ((Hunspell*)pHunspell)->spell(word);
--}
--
--char *Hunspell_get_dic_encoding(Hunhandle *pHunspell)
--{
-- return ((Hunspell*)pHunspell)->get_dic_encoding();
--}
--
--int Hunspell_suggest(Hunhandle *pHunspell, char*** slst, const char * word)
--{
-- return ((Hunspell*)pHunspell)->suggest(slst, word);
--}
--
--int Hunspell_analyze(Hunhandle *pHunspell, char*** slst, const char * word)
--{
-- return ((Hunspell*)pHunspell)->analyze(slst, word);
--}
--
--int Hunspell_stem(Hunhandle *pHunspell, char*** slst, const char * word)
--{
-- return ((Hunspell*)pHunspell)->stem(slst, word);
--}
--
--int Hunspell_stem(Hunhandle *pHunspell, char*** slst, char** desc, int n)
--{
-- return ((Hunspell*)pHunspell)->stem(slst, desc, n);
--}
--
--int Hunspell_generate(Hunhandle *pHunspell, char*** slst, const char * word,
-- const char * word2)
--{
-- return ((Hunspell*)pHunspell)->generate(slst, word, word2);
--}
--
--int Hunspell_generate(Hunhandle *pHunspell, char*** slst, const char * word,
-- char** desc, int n)
--{
-- return ((Hunspell*)pHunspell)->generate(slst, word, desc, n);
--}
--
-- /* functions for run-time modification of the dictionary */
--
-- /* add word to the run-time dictionary */
--
--int Hunspell_add(Hunhandle *pHunspell, const char * word) {
-- return ((Hunspell*)pHunspell)->add(word);
--}
--
-- /* add word to the run-time dictionary with affix flags of
-- * the example (a dictionary word): Hunspell will recognize
-- * affixed forms of the new word, too.
-- */
--
--int Hunspell_add_with_affix(Hunhandle *pHunspell, const char * word,
-- const char * example) {
-- return ((Hunspell*)pHunspell)->add_with_affix(word, example);
--}
--
-- /* remove word from the run-time dictionary */
--
--int Hunspell_remove(Hunhandle *pHunspell, const char * word) {
-- return ((Hunspell*)pHunspell)->remove(word);
--}
--
--void Hunspell_free_list(Hunhandle *pHunspell, char *** slst, int n) {
-- freelist(slst, n);
--}
---- misc/hunspell-1.2.8/src/hunspell/hunspell.hxx 2008-07-09 16:14:39.000000000 +0200
-+++ misc/build/hunspell-1.2.8/src/hunspell/hunspell.hxx 2008-11-26 18:32:58.765625000 +0100
-@@ -28,11 +28,7 @@
- #endif
- #endif
-
--#ifdef WIN32
--class DLLEXPORT Hunspell
--#else
- class Hunspell
--#endif
- {
- AffixMgr* pAMgr;
- HashMgr* pHMgr[MAXDIC];
---- misc/hunspell-1.2.8/src/hunspell/hunzip.cxx Tue Jun 17 10:57:55 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/hunzip.cxx Thu Feb 19 17:29:19 2009
-@@ -8,6 +8,7 @@
- #include <stdio.h>
- #endif
-
-+using namespace std;
- #include "hunzip.hxx"
-
- #define CODELEN 65536
---- misc/hunspell-1.2.8/src/hunspell/hunzip.hxx Thu Feb 19 15:59:42 2009
-+++ misc/build/hunspell-1.2.8/src/hunspell/hunzip.hxx Thu Feb 19 18:13:35 2009
-@@ -18,6 +18,8 @@
- #define MSG_MEMORY "error: %s: missing memory\n"
- #define MSG_KEY "error: %s: missing or bad password\n"
-
-+#include <stdlib.h>
-+
- struct bit {
- unsigned char c[2];
- int v[2];
---- misc/hunspell-1.2.8/src/hunspell/license.hunspell 2008-06-17 10:57:55.000000000 +0200
-+++ misc/build/hunspell-1.2.8/src/hunspell/license.hunspell 2008-11-01 16:30:49.000000000 +0100
-@@ -56,4 +56,3 @@
- *
- * ***** END LICENSE BLOCK ***** */
-
--#include "config.h"
---- misc/hunspell-1.2.8/src/hunspell/makefile.mk Tue Jun 17 10:57:55 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/makefile.mk Thu Feb 19 18:13:52 2009
-@@ -60,11 +60,13 @@
- #
- #*************************************************************************
-
--PRJ = ..
-+PRJ = ../../../../../..
-
- PRJNAME = hunspell
- TARGET = hunspell
--LIBTARGET=NO
-+LIBTARGET=YES
-+EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
-+UWINAPILIB=
-
- #----- Settings ---------------------------------------------------------
-
-@@ -73,7 +74,7 @@
- # --- Files --------------------------------------------------------
-
- # all_target: ALLTAR DICTIONARY
--all_target: ALLTAR
-+#all_target: ALLTAR
-
- ##CXXFLAGS += -I..$/..$/lingutil
- ##CFLAGSCXX += -I..$/..$/lingutil
-@@ -89,6 +90,10 @@
- $(SLO)$/utf_info.obj \
- $(SLO)$/hashmgr.obj \
- $(SLO)$/suggestmgr.obj \
-+ $(SLO)$/phonet.obj \
-+ $(SLO)$/hunzip.obj \
-+ $(SLO)$/filemgr.obj \
-+ $(SLO)$/replist.obj \
- $(SLO)$/hunspell.obj
-
- LIB1TARGET= $(SLB)$/lib$(TARGET).lib
---- misc/hunspell-1.2.8/src/hunspell/phonet.cxx 2008-08-13 15:29:08.000000000 +0200
-+++ misc/build/hunspell-1.2.8/src/hunspell/phonet.cxx 2008-11-01 16:30:49.000000000 +0100
-@@ -32,6 +32,7 @@
- #include <cstring>
- #include <cstdio>
- #include <cctype>
-+using namespace std;
- #else
- #include <stdlib.h>
- #include <string.h>
---- misc/hunspell-1.2.8/src/hunspell/replist.cxx Sat Nov 1 15:09:51 2008
-+++ misc/build/hunspell-1.2.8/src/hunspell/replist.cxx Thu Feb 19 14:02:51 2009
-@@ -13,6 +13,7 @@
-
- #include "replist.hxx"
- #include "csutil.hxx"
-+using namespace std;
-
- RepList::RepList(int n) {
- dat = (replentry **) malloc(sizeof(replentry *) * n);
---- misc/hunspell-1.2.8/src/tools/analyze.cxx Tue Jun 17 13:44:50 2008
-+++ misc/build/hunspell-1.2.8/src/tools/analyze.cxx Thu Feb 19 18:13:35 2009
-@@ -3,13 +3,13 @@
- #include <cstdlib>
- #include <cstdio>
-
--#include "hunspell.hxx"
--
- #ifndef WIN32
- using namespace std;
- #endif
-
-+#include "hunspell.hxx"
-
-+
-
- int main(int argc, char **argv)
- {
---- misc/hunspell-1.2.8/src/tools/chmorph.cxx Tue Jun 17 12:15:34 2008
-+++ misc/build/hunspell-1.2.8/src/tools/chmorph.cxx Thu Feb 19 17:36:46 2009
-@@ -2,13 +2,13 @@
- #include <cstdlib>
- #include <cstdio>
-
--#include "hunspell.hxx"
--#include "textparser.hxx"
--
- #ifndef W32
- using namespace std;
- #endif
-
-+#include "hunspell.hxx"
-+#include "textparser.hxx"
-+
- int
- main(int argc, char** argv)
- {
---- misc/hunspell-1.2.8/src/tools/example.cxx Tue Jun 17 13:07:24 2008
-+++ misc/build/hunspell-1.2.8/src/tools/example.cxx Thu Feb 19 17:38:12 2009
-@@ -2,12 +2,12 @@
- #include <cstdlib>
- #include <cstdio>
-
-+using namespace std;
-+
- #include "hunspell.hxx"
-
- extern char * mystrdup(const char * s);
-
--using namespace std;
--
- int
- main(int argc, char** argv)
- {
---- misc/hunspell-1.2.8/src/tools/hunspell.cxx 2008-09-04 15:44:19.000000000 +0200
-+++ misc/build/hunspell-1.2.8/src/tools/hunspell.cxx 2008-11-01 16:31:24.000000000 +0100
-@@ -7,10 +7,20 @@
-
- #include <cstdlib>
- #include <cstdio>
-+
-+#ifdef __SUNPRO_CC
-+using namespace std;
-+#include <string.h>
-+#include <malloc.h>
-+#endif
-+
- #include "config.h"
- #include "hunspell.hxx"
- #include "csutil.hxx"
-
-+// switch off iconv support for tests (fixing Solaris problems)
-+#undef HAVE_ICONV
-+
- #ifndef HUNSPELL_EXTRA
- #define suggest_auto suggest
- #endif
-@@ -28,7 +38,9 @@
-
- #ifdef WIN32
-
-+#ifndef __MINGW32__
- #define gettext
-+#endif
- #define LIBDIR "C:\\Hunspell\\"
- #define USEROOODIR "Application Data\\OpenOffice.org 2\\user\\wordbook"
- #define OOODIR \
-@@ -98,8 +110,10 @@
- #if ENABLE_NLS
- #ifdef HAVE_LOCALE_H
- #include <locale.h>
-+#ifdef HAVE_LANGINFO_CODESET
- #include <langinfo.h>
- #endif
-+#endif
-
- #ifdef HAVE_LIBINTL_H
- #include <libintl.h>
-@@ -1385,9 +1399,11 @@
- #ifdef HAVE_LOCALE_H
- ui_lang = setlocale(LC_ALL, "");
- textdomain("hunspell");
-+#ifdef HAVE_LANGINFO_CODESET
- ui_enc = nl_langinfo(CODESET);
- #endif
- #endif
-+#endif
-
- #ifdef HAVE_READLINE
- rl_set_key("", rl_escape, rl_get_keymap());
---- misc/hunspell-1.2.8/src/tools/hunzip.cxx Tue Jan 15 11:10:04 2008
-+++ misc/build/hunspell-1.2.8/src/tools/hunzip.cxx Thu Feb 19 17:38:12 2009
-@@ -2,6 +2,8 @@
- #include <stdlib.h>
- #include <string.h>
-
-+using namespace std;
-+
- #include "hunzip.hxx"
-
- #define DESC "hunzip - decompress a hzip file to the standard output\n" \
---- misc/hunspell-1.2.8/src/tools/hzip.c Fri Apr 4 15:20:10 2008
-+++ misc/build/hunspell-1.2.8/src/tools/hzip.c Thu Feb 19 18:13:35 2009
-@@ -44,7 +44,7 @@
- if (tree->type != code_NODE) {
- int i = tree->word;
- code[deep] = '\0';
-- if (tree->type == code_TERM) i = CODELEN; // terminal code
-+ if (tree->type == code_TERM) i = CODELEN;
- table[i] = malloc((deep + 1) * sizeof(char));
- strcpy(table[i], code);
- }
-@@ -63,7 +63,7 @@
- return ni;
- }
-
--// return length of the freq array
-+
- int get_freqdata(struct item *** dest, FILE * f, unsigned short * termword) {
- int freq[CODELEN];
- int i, j, k, n;
-@@ -88,7 +88,7 @@
- (*dest)[n]->word = i;
- n++;
- }
-- // terminal sequence (also contains the last odd byte of the file)
-+
- (*dest)[n] = newitem(1, NULL, NULL, code_TERM);
- *termword = *((unsigned short *) c);
- return n + 1;
-@@ -134,20 +134,20 @@
- char c[2];
- char * enc = key;
-
-- // header and codes
-- fprintf(f2, "%s", (key ? MAGIC_ENCRYPTED : MAGIC)); // 3-byte HEADER
-+
-+ fprintf(f2, "%s", (key ? MAGIC_ENCRYPTED : MAGIC));
- cl = (unsigned char) (n & 0x00ff);
- ch = (unsigned char) (n >> 8);
- if (key) {
- unsigned char cs;
- for (cs = 0; *enc; enc++) cs ^= *enc;
-- fprintf(f2, "%c", cs); // 1-byte check sum
-+ fprintf(f2, "%c", cs);
- enc = key;
- ch ^= *enc;
- if ((*(++enc)) == '\0') enc = key;
- cl ^= *enc;
- }
-- fprintf(f2, "%c%c", ch, cl); // upper and lower byte of record count
-+ fprintf(f2, "%c%c", ch, cl);
- for (i = 0; i < BUFSIZE; i++) bitbuf[i] = '\0';
- for (i = 0; i < CODELEN + 1; i++) if (table[i]) {
- unsigned short * d = (unsigned short *) &c;
-@@ -159,7 +159,7 @@
- if (*(++enc) == '\0') enc = key;
- c[1] ^= *enc;
- }
-- fprintf(f2, "%c%c", c[0], c[1]); // 2-character code id
-+ fprintf(f2, "%c%c", c[0], c[1]);
- bits = 0;
- write_bits(f2, bitbuf, &bits, table[i]);
- if (key) {
-@@ -169,11 +169,11 @@
- if (*(++enc) == '\0') enc = key;
- bitbuf[cl] ^= *enc;
- }
-- } else fprintf(f2, "%c", (unsigned char) bits); // 1-byte code length
-- fwrite(bitbuf, sizeof(char), bits/8 + 1, f2); // x-byte code
-+ } else fprintf(f2, "%c", (unsigned char) bits);
-+ fwrite(bitbuf, sizeof(char), bits/8 + 1, f2);
- }
-
-- // file encoding
-+
- bits = 0;
- while((cx[0] = getc(f)) != -1 && (cx[1] = getc(f)) != -1) {
- c[0] = cx[0];
-@@ -180,7 +180,7 @@
- c[1] = cx[1];
- write_bits(f2, bitbuf, &bits, table[*((unsigned short *) c)]);
- }
-- // terminal suffixes
-+
- write_bits(f2, bitbuf, &bits, table[CODELEN]);
- if (bits > 0) fwrite(bitbuf, sizeof(char), bits/8 + 1, f2);
- }
-@@ -201,11 +201,11 @@
- } else pfx = 0;
- }
- if (i > 0 && buf[i - 1] == '\n') {
-- if (j == i) j--; // line duplicate
-+ if (j == i) j--;
- if (j > 29) j = 29;
- c = j;
- if (c == '\t') c = 30;
-- // common suffix
-+
- for (; buf[i - m - 2] == prev[prevlen - m - 2] &&
- m < i - j - 1 && m < 15; m++);
- if (m == 1) m = 0;
-@@ -221,7 +221,7 @@
- *p = buf[k];
- }
- if (m > 0) {
-- *p = m + 31; // 33-46
-+ *p = m + 31;
- p++;
- }
- if (i > 0 && buf[i - 1] == '\n') {
diff --git a/hunspell/hunspell-consts-1.2.8.patch b/hunspell/hunspell-consts-1.2.8.patch
deleted file mode 100644
index 8f8c72796cb4..000000000000
--- a/hunspell/hunspell-consts-1.2.8.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- misc/hunspell-1.2.8/src/hunspell/affixmgr.cxx 2009-05-16 14:33:27.000000000 +0100
-+++ misc/build/hunspell-1.2.8/src/hunspell/affixmgr.cxx 2009-05-16 14:35:52.000000000 +0100
-@@ -3238,7 +3238,7 @@
- }
-
- // return the value of suffix
--const int AffixMgr::have_contclass()
-+int AffixMgr::have_contclass() const
- {
- return havecontclass;
- }
---- misc/hunspell-1.2.8.orig/src/hunspell/affixmgr.hxx 2009-05-16 14:33:27.000000000 +0100
-+++ misc/build/hunspell-1.2.8/src/hunspell/affixmgr.hxx 2009-05-16 14:35:38.000000000 +0100
-@@ -189,7 +189,7 @@
- const char * get_suffix();
- const char * get_derived();
- const char * get_version();
-- const int have_contclass();
-+ int have_contclass() const;
- int get_utf8();
- int get_complexprefixes();
- char * get_suffixed(char );
diff --git a/hunspell/hunspell-solaris.patch b/hunspell/hunspell-solaris.patch
new file mode 100644
index 000000000000..37c5101364b4
--- /dev/null
+++ b/hunspell/hunspell-solaris.patch
@@ -0,0 +1,12 @@
+--- misc/hunspell-1.2.9.orig/src/tools/hunspell.cxx 2010-02-27 23:42:05.000000000 +0000
++++ misc/build/hunspell-1.2.9/src/tools/hunspell.cxx 2010-02-27 23:43:02.000000000 +0000
+@@ -10,6 +10,9 @@
+ #include "hunspell.hxx"
+ #include "csutil.hxx"
+
++// switch off iconv support for tests (fixing Solaris problems)
++#undef HAVE_ICONV
++
+ #ifndef HUNSPELL_EXTRA
+ #define suggest_auto suggest
+ #endif
diff --git a/hunspell/hunspell-stacksmash.patch b/hunspell/hunspell-stacksmash.patch
new file mode 100644
index 000000000000..8765b6d784d3
--- /dev/null
+++ b/hunspell/hunspell-stacksmash.patch
@@ -0,0 +1,28 @@
+--- misc/hunspell-1.2.9/src/hunspell/hunspell.cxx 2010-03-04 10:25:06.000000000 +0000
++++ misc/build/hunspell-1.2.9/src/hunspell/hunspell.cxx 2010-03-04 10:25:38.000000000 +0000
+@@ -1665,7 +1665,7 @@
+ if (!q2) return 0; // bad XML input
+ if (check_xml_par(q, "type=", "analyze")) {
+ int n = 0, s = 0;
+- if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN)) n = analyze(slst, cw);
++ if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN - 1)) n = analyze(slst, cw);
+ if (n == 0) return 0;
+ // convert the result to <code><a>ana1</a><a>ana2</a></code> format
+ for (int i = 0; i < n; i++) s+= strlen((*slst)[i]);
+@@ -1686,13 +1686,13 @@
+ (*slst)[0] = r;
+ return 1;
+ } else if (check_xml_par(q, "type=", "stem")) {
+- if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN)) return stem(slst, cw);
++ if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN - 1)) return stem(slst, cw);
+ } else if (check_xml_par(q, "type=", "generate")) {
+- int n = get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN);
++ int n = get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN - 1);
+ if (n == 0) return 0;
+ char * q3 = strstr(q2 + 1, "<word");
+ if (q3) {
+- if (get_xml_par(cw2, strchr(q3, '>'), MAXWORDUTF8LEN)) {
++ if (get_xml_par(cw2, strchr(q3, '>'), MAXWORDUTF8LEN - 1)) {
+ return generate(slst, cw, cw2);
+ }
+ } else {
diff --git a/hunspell/hunspell-wntconfig.patch b/hunspell/hunspell-wntconfig.patch
new file mode 100644
index 000000000000..9b6bc9c3fbb2
--- /dev/null
+++ b/hunspell/hunspell-wntconfig.patch
@@ -0,0 +1,4 @@
+--- misc/hunspell-1.2.9/config.h 2010-02-25 14:38:38.000000000 +0000
++++ misc/build/hunspell-1.2.9/config.h 2010-02-25 14:38:42.000000000 +0000
+@@ -1 +0,0 @@
+-dummy
diff --git a/hunspell/makefile.mk b/hunspell/makefile.mk
index b20e8d135887..f58204a33bc5 100644
--- a/hunspell/makefile.mk
+++ b/hunspell/makefile.mk
@@ -36,17 +36,16 @@ TARGET=hunspell
# --- Files --------------------------------------------------------
-TARFILE_NAME=hunspell-1.2.8
-TARFILE_ROOTDIR=hunspell-1.2.8
-
-#ADDITIONAL_FILES += src/hunspell/makefile.mk
+TARFILE_NAME=hunspell-1.2.9
+TARFILE_MD5=68dd2e8253d9a7930e9fd50e2d7220d0
+ADDITIONAL_FILES+=config.h
PATCH_FILES=\
- hunspell-1.2.8.patch \
- hunspell-consts-1.2.8.patch # hunspell#2064983
+ hunspell-wntconfig.patch \
+ hunspell-solaris.patch \
+ hunspell-stacksmash.patch
.IF "$(GUI)"=="UNX"
-#CONFIGURE_DIR=$(BUILD_DIR)
#relative to CONFIGURE_DIR
CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) configure
diff --git a/icu/createmak.cfg b/icu/createmak.cfg
index f2c7c050bdd3..19ef708cca40 100644
--- a/icu/createmak.cfg
+++ b/icu/createmak.cfg
@@ -1,455 +1,452 @@
-[Copy]
-SOURCE=<HEADER>
-InputPath=<INPUTPATH>
-"<TARGET>" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- <<tempfile.bat
- @echo off
- <TARGETPATH>
-<<
-
-[Deps]
-SOURCE=.\<SOURCEFILE>.<EXT>
-"$(INTDIR)\<SOURCEFILE>.obj": $(SOURCE) "$(INTDIR)" <HEADER_LIST>
-
-[Cpp]
-CPP=cl.exe
-[Link]
-LINK32=link.exe
-[CDefs_Common]
-
-[RSC_Template]
-RSC=rc.exe
-RSC_PROJ=/l 0x409 /fo"$(INTDIR)\<FILEOUT>.res" /i "..\common" /d "NDEBUG"
-SOURCE=<FILE>
-"$(INTDIR)\<FILEOUT>.res" : $(SOURCE) "$(INTDIR)"
- $(RSC) $(RSC_PROJ) $(SOURCE)
-
-[General_CFlags]
-CPP_PROJ_INCLUDES=<AddIncDirs>
-CDEFS=<PreProcDefs>
-COPT=-nologo -O2 -Ob2
-CPDBOBJ=-FD -Fo"$(INTDIR)\\" -Fd"$(INTDIR)\\"
-CTOOLSFLAGS=-nologo -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-CDEF1FLAGS= -D "_WINDOWS" -D "_MBCS"
-
-[CFlags_common]
-CPP_PROJ=-nologo -MD -Za -Zi -W3 -GF -O2 -Ob2 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_i18n]
-CPP_PROJ=-MD -W3 -Oi -Op -GF -FD -GS -Gy -Za -Zi $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/i18n.pch" $(CPDBOBJ) -c
-
-[CFlags_extra_uconv]
-CPP_PROJ=-MD -W3 -Op -GF -Gy $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/uconv.pch" $(CPDBOBJ) -c
-
-[CFlags_layout]
-CPP_PROJ=-Za -GF -Gy -W3 $(EXCEPTIONSWITCH) -O2 $(CPP_PROJ_INCLUDES) $(CDEFS) -D "LAYOUT_EXPORTS" -D "_WINDOWS" -D "_MBCS" -D "_USRDLL" $(CPDBOBJ) -c
-
-[CFlags_io]
-CPP_PROJ=-Za -GF -Gy -W3 $(EXCEPTIONSWITCH) -O2 $(CPP_PROJ_INCLUDES) $(CDEFS) -D "LAYOUT_EXPORTS" -D "_WINDOWS" -D "_MBCS" -D "_USRDLL" $(CPDBOBJ) -c
-
-[CFlags_layoutex]
-CPP_PROJ=-MT -W3 -Op -GF -Gy $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/layoutex.pch" $(CPDBOBJ) -c
-
-[CFlags_stubdata]
-CPP_PROJ=-MD -W3 -Op -GF -Gy -Za $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/stubdata.pch" $(CPDBOBJ) -c
-
-[CFlags_test_cintltst]
-CPP_PROJ=-MT -Za -O2 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_test_intltest]
-CPP_PROJ=-nologo -MT -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_test_iotest]
-CPP_PROJ=-nologo -MD -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_test_letest]
-CPP_PROJ=-nologo -MD -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_tools_ctestfw]
-CPP_PROJ=-nologo -MD -O2 -Op -FD -Za -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/icutest.pch" $(CPDBOBJ) -c
-
-[CFlags_tools_genbrk]
-CPP_PROJ=-nologo -MD -Za -O2 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
-
-[CFlags_tools_gencase]
-CPP_PROJ=-nologo -MD -GF -Za -Zi -W3 $(EXCEPTIONSWITCH) $(COPT) $(CPDBOBJ) -c
-
-[CFlags_tools_genccode]
-CPP_PROJ=-MD -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_gencmn]
-CPP_PROJ=-O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_genctd]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_gencnval]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_gennames]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_gennorm]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_genpname]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_genprops]
-CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
-
-[CFlags_tools_genrb]
-CPP_PROJ=-Za $(CTOOLSFLAGS)
-
-[CFlags_tools_genrb.derb]
-CPP_PROJ=-Za -GX $(CTOOLSFLAGS)
-
-[CFlags_tools_gensprep]
-CPP_PROJ=-Za $(CTOOLSFLAGS)
-
-[CFlags_tools_gentest]
-CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_genuca]
-CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_gencase]
-CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_genbidi]
-CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_icupkg]
-CPP_PROJ=-O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_icuswap]
-CPP_PROJ=-O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_makeconv]
-CPP_PROJ=-Za $(CTOOLSFLAGS)
-
-[CFlags_tools_pkgdata]
-CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
-
-[CFlags_tools_toolutil]
-CPP_PROJ=-MD -O2 $(CTOOLSFLAGS)
-
-[CommonLinkFlags]
-PDBOUT=/pdb:"<PDBFILE>" /out:"<OUTFILE>"
-COMMONLINKFLAGS=/incremental:no /machine:I386 /nologo $(PDBOUT)
-COMMONLINKFLAGS_CONSOLE=$(COMMONLINKFLAGS) /subsystem:console
-COMMONLINKFLAGS_DLL=$(COMMONLINKFLAGS) /dll
-
-[LinkFlags_common]
-LINK32_FLAGS=icudata.lib kernel32.lib user32.lib advapi32.lib shell32.lib $(COMMONLINKFLAGS_DLL) /base:"0x4a800000" /implib:"$(OUTDIR)\icuuc.lib" /libpath:"..\..\lib"
-
-[LinkFlags_i18n]
-LINK32_FLAGS=icuuc.lib $(COMMONLINKFLAGS_DLL) /base:"0x4a900000" /implib:"$(OUTDIR)\icuin.lib" /libpath:"..\..\lib"
-
-[LinkFlags_extra_uconv]
-LINK32_FLAGS=icuuc.lib icuin.lib uconvmsg.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib" /libpath:"Release"
-
-[LinkFlags_layout]
-LINK32_FLAGS=..\..\lib\icuuc.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\icule.lib"
-
-[LinkFlags_io]
-LINK32_FLAGS=icuuc.lib icuin.lib $(COMMONLINKFLAGS_DLL) /libpath:"..\..\lib" /implib:"$(OUTDIR)\icuio.lib"
-
-[LinkFlags_layoutex]
-LINK32_FLAGS=..\..\lib\icuuc.lib ..\..\lib\icule.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\iculx.lib"
-
-[LinkFlags_stubdata]
-LINK32_FLAGS=kernel32.lib user32.lib /nologo /dll /incremental:yes /machine:I386 $(PDBOUT) /implib:"..\..\lib\icudata.lib"
-
-[LinkFlags_test_cintltst]
-LINK32_FLAGS=icuuc.lib icuin.lib icutest.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib\\"
-
-[LinkFlags_test_intltest]
-LINK32_FLAGS=$(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
-
-[LinkFlags_test_iotest]
-LINK32_FLAGS=icuuc.lib icuin.lib icutu.lib icuio.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
-
-[LinkFlags_test_letest]
-LINK32_FLAGS=icuuc.lib icuin.lib icutu.lib icule.lib iculx.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_ctestfw]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\icutest.lib" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genbrk]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gencmn]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genctd]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gencnval]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genccode]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gennames]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gennorm]
-LINK32_FLAGS=icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genpname]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genprops]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genrb]
-LINK32_FLAGS=icuin.lib icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genrb.derb]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gensprep]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gentest]
-LINK32_FLAGS=icuuc.lib icutu.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genuca]
-LINK32_FLAGS=icuin.lib icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_gencase]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_genbidi]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_icupkg]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_icuswap]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_makeconv]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_pkgdata]
-LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"../toolutil/release" /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
-
-[LinkFlags_tools_toolutil]
-LINK32_FLAGS=kernel32.lib ..\..\..\lib\icuin.lib $(COMMONLINKFLAGS_DLL) /NODEFAULTLIB:libcmt /implib:"$(OUTDIR)\icutu.lib" /libpath:"..\..\..\lib"
-
-[LinkTemplate]
-<OUTFILE> : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
- if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;<MANIFEST>
-
-[AdditionalLinkObjects_common]
- $(OUTDIR)\icudata.lib
-
-[AdditionalLinkObjects_i18n]
- "$(OUTDIR)\icuuc.lib"
-
-[AdditionalLinkObjects_extra_uconv]
- "$(INTDIR)\uconvmsg.lib" \
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icuin.lib"
-
-[AdditionalLinkObjects_layout]
- "$(OUTDIR)\icuuc.lib"
-
-[AdditionalLinkObjects_io]
- "$(OUTDIR)\icuuc.lib"
-
-[AdditionalLinkObjects_layoutex]
- "$(OUTDIR)\icuuc.lib" \
- "$(OUTDIR)\icuin.lib" \
- "$(OUTDIR)\icule.lib"
-
-[AdditionalLinkObjects_test_cintltst]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutest.lib" \
- "..\..\..\lib\icuin.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_test_intltest]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutest.lib" \
- "..\..\..\lib\icuin.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_test_letest]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutest.lib" \
- "..\..\..\lib\icuin.lib" \
- "..\..\..\lib\icule.lib" \
- "..\..\..\lib\iculx.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genbrk]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genccode]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gencmn]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genctd]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gencnval]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gennames]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gennorm]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genpname]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genprops]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genrb]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icuin.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genrb.derb]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icudata.lib"
-
-[AdditionalLinkObjects_tools_gensprep]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gentest]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genuca]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icuin.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_gencase]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_genbidi]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_icupkg]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_icuswap]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_makeconv]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_pkgdata]
- "..\..\..\lib\icuuc.lib" \
- "..\..\..\lib\icutu.lib"
-
-[AdditionalLinkObjects_tools_toolutil]
- "$(OUTDIR)\icuuc.lib"
-
-
-[Rules]
-.c{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.c{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-[AllTargetTools]
-ALL : "$(OUTDIR)\<MAKFILE>.exe" ".\<RELPATH>\bin\<MAKFILE>.exe"
-
-[AllInOnePrj]
-<PRJ> :
- cd "$(MAKEDIR)\<PRJDIR>"
- $(MAKE) /$(MAKEFLAGS) /F <PRJMAK> EXCEPTIONSWITCH="$(EXFLAGS)"
- cd "<ALLINONEDIR>"
-
-[HeadSectionCommon]
-NULL=
-!IF "$(CFG)" == "<MAKFILE> - Win32 Release"
-
-OUTDIR=<OUTDIR>
-INTDIR=<INTDIR>
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/\$(NULL)" mkdir "$(OUTDIR)"
-
-"$(INTDIR)" :
- if not exist "$(INTDIR)/\$(NULL)" mkdir "$(INTDIR)"
-
-!IF "$(CFG)" == "<MAKFILE> - Win32 Release"
-
-ALL : <ALLTARGETS>
-
-[Special_stubdata]
-<OUTFILE> : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- @if not exist "..\..\bin" mkdir "..\..\bin"
- @if not exist "..\..\lib" mkdir "..\..\lib"
- @if not exist "..\..\include" mkdir "..\..\include"
- @if not exist "..\..\include\unicode" mkdir "..\..\include\unicode"
- @if not exist "..\..\include\layout" mkdir "..\..\include\layout"
- echo "File with stubdata build time, used as a dependency to trigger fresh data build, since stubdata dll will overwrite the real one." > .\stubdatabuilt.txt
- $(LINK32) $(LINK32_FLAGS) $(LINK32_OBJS)
-
-[Special_extra_uconv]
-SOURCE=.\makedata.mak
-InputPath=.\makedata.mak
-
-"$(INTDIR)\uconvmsg.lib" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- <<tempfile.bat
- @echo off
- nmake /nologo /f makedata.mak icup=.\..\..\.. CFG=Release
-<<
-
-
-
-[End]
+[Copy]
+SOURCE=<HEADER>
+InputPath=<INPUTPATH>
+"<TARGET>" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ <TARGETPATH>
+
+[Deps]
+SOURCE=.\<SOURCEFILE>.<EXT>
+"$(INTDIR)\<SOURCEFILE>.obj": $(SOURCE) "$(INTDIR)" <HEADER_LIST>
+
+[Cpp]
+CPP=cl.exe
+[Link]
+LINK32=link.exe
+[CDefs_Common]
+
+[RSC_Template]
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\<FILEOUT>.res" /i "..\common" /d "NDEBUG"
+SOURCE=<FILE>
+"$(INTDIR)\<FILEOUT>.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) $(RSC_PROJ) $(SOURCE)
+
+[General_CFlags]
+CPP_PROJ_INCLUDES=<AddIncDirs>
+CDEFS=<PreProcDefs>
+COPT=-nologo -O2 -Ob2
+CPDBOBJ=-FD -Fo"$(INTDIR)\\" -Fd"$(INTDIR)\\"
+CTOOLSFLAGS=-nologo -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+CDEF1FLAGS= -D "_WINDOWS" -D "_MBCS"
+
+[CFlags_common]
+CPP_PROJ=-nologo -MD -Za -Zi -W3 -GF -O2 -Ob2 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_i18n]
+CPP_PROJ=-MD -W3 -Oi -Op -GF -FD -GS -Gy -Za -Zi $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/i18n.pch" $(CPDBOBJ) -c
+
+[CFlags_extra_uconv]
+CPP_PROJ=-MD -W3 -Op -GF -Gy $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/uconv.pch" $(CPDBOBJ) -c
+
+[CFlags_layout]
+CPP_PROJ=-Za -GF -Gy -W3 $(EXCEPTIONSWITCH) -O2 $(CPP_PROJ_INCLUDES) $(CDEFS) -D "LAYOUT_EXPORTS" -D "_WINDOWS" -D "_MBCS" -D "_USRDLL" $(CPDBOBJ) -c
+
+[CFlags_io]
+CPP_PROJ=-Za -GF -Gy -W3 $(EXCEPTIONSWITCH) -O2 $(CPP_PROJ_INCLUDES) $(CDEFS) -D "LAYOUT_EXPORTS" -D "_WINDOWS" -D "_MBCS" -D "_USRDLL" $(CPDBOBJ) -c
+
+[CFlags_layoutex]
+CPP_PROJ=-MT -W3 -Op -GF -Gy $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/layoutex.pch" $(CPDBOBJ) -c
+
+[CFlags_stubdata]
+CPP_PROJ=-MD -W3 -Op -GF -Gy -Za $(EXCEPTIONSWITCH) $(COPT) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/stubdata.pch" $(CPDBOBJ) -c
+
+[CFlags_test_cintltst]
+CPP_PROJ=-MT -Za -O2 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_test_intltest]
+CPP_PROJ=-nologo -MT -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_test_iotest]
+CPP_PROJ=-nologo -MD -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_test_letest]
+CPP_PROJ=-nologo -MD -Za -Zi -Ox -Ob0 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_tools_ctestfw]
+CPP_PROJ=-nologo -MD -O2 -Op -FD -Za -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) -Fp".\Release/icutest.pch" $(CPDBOBJ) -c
+
+[CFlags_tools_genbrk]
+CPP_PROJ=-nologo -MD -Za -O2 -W3 $(EXCEPTIONSWITCH) $(CPP_PROJ_INCLUDES) $(CDEFS) $(CPDBOBJ) -c
+
+[CFlags_tools_gencase]
+CPP_PROJ=-nologo -MD -GF -Za -Zi -W3 $(EXCEPTIONSWITCH) $(COPT) $(CPDBOBJ) -c
+
+[CFlags_tools_genccode]
+CPP_PROJ=-MD -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_gencmn]
+CPP_PROJ=-O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_genctd]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_gencnval]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_gennames]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_gennorm]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_genpname]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_genprops]
+CPP_PROJ=-MD -O2 -Za $(CTOOLSFLAGS)
+
+[CFlags_tools_genrb]
+CPP_PROJ=-Za $(CTOOLSFLAGS)
+
+[CFlags_tools_genrb.derb]
+CPP_PROJ=-Za -GX $(CTOOLSFLAGS)
+
+[CFlags_tools_gensprep]
+CPP_PROJ=-Za $(CTOOLSFLAGS)
+
+[CFlags_tools_gentest]
+CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_genuca]
+CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_gencase]
+CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_genbidi]
+CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_icupkg]
+CPP_PROJ=-O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_icuswap]
+CPP_PROJ=-O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_makeconv]
+CPP_PROJ=-Za $(CTOOLSFLAGS)
+
+[CFlags_tools_pkgdata]
+CPP_PROJ=-Za -O2 $(CTOOLSFLAGS)
+
+[CFlags_tools_toolutil]
+CPP_PROJ=-MD -O2 $(CTOOLSFLAGS)
+
+[CommonLinkFlags]
+PDBOUT=/pdb:"<PDBFILE>" /out:"<OUTFILE>"
+COMMONLINKFLAGS=/incremental:no /machine:I386 /nologo $(PDBOUT)
+COMMONLINKFLAGS_CONSOLE=$(COMMONLINKFLAGS) /subsystem:console
+COMMONLINKFLAGS_DLL=$(COMMONLINKFLAGS) /dll
+
+[LinkFlags_common]
+LINK32_FLAGS=icudata.lib kernel32.lib user32.lib advapi32.lib shell32.lib $(COMMONLINKFLAGS_DLL) /base:"0x4a800000" /implib:"$(OUTDIR)\icuuc.lib" /libpath:"..\..\lib"
+
+[LinkFlags_i18n]
+LINK32_FLAGS=icuuc.lib $(COMMONLINKFLAGS_DLL) /base:"0x4a900000" /implib:"$(OUTDIR)\icuin.lib" /libpath:"..\..\lib"
+
+[LinkFlags_extra_uconv]
+LINK32_FLAGS=icuuc.lib icuin.lib uconvmsg.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib" /libpath:"Release"
+
+[LinkFlags_layout]
+LINK32_FLAGS=..\..\lib\icuuc.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\icule.lib"
+
+[LinkFlags_io]
+LINK32_FLAGS=icuuc.lib icuin.lib $(COMMONLINKFLAGS_DLL) /libpath:"..\..\lib" /implib:"$(OUTDIR)\icuio.lib"
+
+[LinkFlags_layoutex]
+LINK32_FLAGS=..\..\lib\icuuc.lib ..\..\lib\icule.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\iculx.lib"
+
+[LinkFlags_stubdata]
+LINK32_FLAGS=kernel32.lib user32.lib /nologo /dll /incremental:yes /machine:I386 $(PDBOUT) /implib:"..\..\lib\icudata.lib"
+
+[LinkFlags_test_cintltst]
+LINK32_FLAGS=icuuc.lib icuin.lib icutest.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib\\"
+
+[LinkFlags_test_intltest]
+LINK32_FLAGS=$(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
+
+[LinkFlags_test_iotest]
+LINK32_FLAGS=icuuc.lib icuin.lib icutu.lib icuio.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
+
+[LinkFlags_test_letest]
+LINK32_FLAGS=icuuc.lib icuin.lib icutu.lib icule.lib iculx.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_ctestfw]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_DLL) /implib:"$(OUTDIR)\icutest.lib" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genbrk]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gencmn]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genctd]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gencnval]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genccode]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gennames]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gennorm]
+LINK32_FLAGS=icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genpname]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genprops]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genrb]
+LINK32_FLAGS=icuin.lib icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genrb.derb]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gensprep]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gentest]
+LINK32_FLAGS=icuuc.lib icutu.lib icutest.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genuca]
+LINK32_FLAGS=icuin.lib icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_gencase]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_genbidi]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_icupkg]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_icuswap]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_makeconv]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_pkgdata]
+LINK32_FLAGS=icuuc.lib icutu.lib $(COMMONLINKFLAGS_CONSOLE) /libpath:"../toolutil/release" /libpath:"..\toolutil\Release" /libpath:"..\..\..\lib"
+
+[LinkFlags_tools_toolutil]
+LINK32_FLAGS=kernel32.lib ..\..\..\lib\icuin.lib $(COMMONLINKFLAGS_DLL) /NODEFAULTLIB:libcmt /implib:"$(OUTDIR)\icutu.lib" /libpath:"..\..\..\lib"
+
+[LinkTemplate]
+<OUTFILE> : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+ if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;<MANIFEST>
+
+[AdditionalLinkObjects_common]
+ $(OUTDIR)\icudata.lib
+
+[AdditionalLinkObjects_i18n]
+ "$(OUTDIR)\icuuc.lib"
+
+[AdditionalLinkObjects_extra_uconv]
+ "$(INTDIR)\uconvmsg.lib" \
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icuin.lib"
+
+[AdditionalLinkObjects_layout]
+ "$(OUTDIR)\icuuc.lib"
+
+[AdditionalLinkObjects_io]
+ "$(OUTDIR)\icuuc.lib"
+
+[AdditionalLinkObjects_layoutex]
+ "$(OUTDIR)\icuuc.lib" \
+ "$(OUTDIR)\icuin.lib" \
+ "$(OUTDIR)\icule.lib"
+
+[AdditionalLinkObjects_test_cintltst]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutest.lib" \
+ "..\..\..\lib\icuin.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_test_intltest]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutest.lib" \
+ "..\..\..\lib\icuin.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_test_letest]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutest.lib" \
+ "..\..\..\lib\icuin.lib" \
+ "..\..\..\lib\icule.lib" \
+ "..\..\..\lib\iculx.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genbrk]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genccode]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gencmn]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genctd]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gencnval]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gennames]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gennorm]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genpname]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genprops]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genrb]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icuin.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genrb.derb]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icudata.lib"
+
+[AdditionalLinkObjects_tools_gensprep]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gentest]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genuca]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icuin.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_gencase]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_genbidi]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_icupkg]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_icuswap]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_makeconv]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_pkgdata]
+ "..\..\..\lib\icuuc.lib" \
+ "..\..\..\lib\icutu.lib"
+
+[AdditionalLinkObjects_tools_toolutil]
+ "$(OUTDIR)\icuuc.lib"
+
+
+[Rules]
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+[AllTargetTools]
+ALL : "$(OUTDIR)\<MAKFILE>.exe" ".\<RELPATH>\bin\<MAKFILE>.exe"
+
+[AllInOnePrj]
+<PRJ> :
+ cd "$(MAKEDIR)\<PRJDIR>"
+ $(MAKE) /$(MAKEFLAGS) /F <PRJMAK> EXCEPTIONSWITCH="$(EXFLAGS)"
+ cd "<ALLINONEDIR>"
+
+[HeadSectionCommon]
+NULL=
+!IF "$(CFG)" == "<MAKFILE> - Win32 Release"
+
+OUTDIR=<OUTDIR>
+INTDIR=<INTDIR>
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/\$(NULL)" mkdir "$(OUTDIR)"
+
+"$(INTDIR)" :
+ if not exist "$(INTDIR)/\$(NULL)" mkdir "$(INTDIR)"
+
+!IF "$(CFG)" == "<MAKFILE> - Win32 Release"
+
+ALL : <ALLTARGETS>
+
+[Special_stubdata]
+<OUTFILE> : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ @if not exist "..\..\bin" mkdir "..\..\bin"
+ @if not exist "..\..\lib" mkdir "..\..\lib"
+ @if not exist "..\..\include" mkdir "..\..\include"
+ @if not exist "..\..\include\unicode" mkdir "..\..\include\unicode"
+ @if not exist "..\..\include\layout" mkdir "..\..\include\layout"
+ echo "File with stubdata build time, used as a dependency to trigger fresh data build, since stubdata dll will overwrite the real one." > .\stubdatabuilt.txt
+ $(LINK32) $(LINK32_FLAGS) $(LINK32_OBJS)
+
+[Special_extra_uconv]
+SOURCE=.\makedata.mak
+InputPath=.\makedata.mak
+
+"$(INTDIR)\uconvmsg.lib" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ <<tempfile.bat
+ @echo off
+ nmake /nologo /f makedata.mak icup=.\..\..\.. CFG=Release
+<<
+
+
+
+[End]
diff --git a/icu/makefile.mk b/icu/makefile.mk
index 8776ada87979..70ff42c1a443 100644
--- a/icu/makefile.mk
+++ b/icu/makefile.mk
@@ -39,8 +39,10 @@ TARGET=so_icu
.IF "$(ICU_MICRO)"!="0"
TARFILE_NAME=icu4c-$(ICU_MAJOR)_$(ICU_MINOR)_$(ICU_MICRO)-src
+TARFILE_MD5=2f6ecca935948f7db92d925d88d0d078
.ELSE
TARFILE_NAME=icu4c-$(ICU_MAJOR)_$(ICU_MINOR)-src
+TARFILE_MD5=
.ENDIF
TARFILE_ROOTDIR=icu
@@ -85,9 +87,8 @@ icu_CFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
icu_LDFLAGS+=$(EXTRA_LINKFLAGS)
icu_CXXFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
-BUILD_ACTION_SEP=;
# remove conversion and transliteration data to reduce binary size.
-CONFIGURE_ACTION=rm data/mappings/ucm*.mk data/translit/trn*.mk $(BUILD_ACTION_SEP)
+CONFIGURE_ACTION=rm data/mappings/ucm*.mk data/translit/trn*.mk ;
# until someone introduces SOLARIS 64-bit builds
.IF "$(OS)"=="SOLARIS"
@@ -184,11 +185,6 @@ OUT2BIN= \
$(BUILD_DIR)$/bin$/gencmn.exe
.ELSE
-.IF "$(USE_SHELL)"=="4nt"
-BUILD_ACTION_SEP=^
-.ELSE
-BUILD_ACTION_SEP=;
-.ENDIF # "$(USE_SHELL)"=="4nt"
BUILD_DIR=source
.IF "full_debug" == ""
@@ -254,7 +250,7 @@ OUT2BIN= \
.IF "$(BINARY_PATCH_FILES)"!=""
$(PACKAGE_DIR)$/so_add_binary : $(PACKAGE_DIR)$/$(ADD_FILES_FLAG_FILE)
- cd $(PACKAGE_DIR) && gunzip -c $(BACK_PATH)$(BINARY_PATCH_FILES) | tar $(TAR_EXCLUDE_SWITCH) -xvf -
+ cd $(PACKAGE_DIR) && gunzip -c $(BACK_PATH)$(BINARY_PATCH_FILES) | tar -xvf -
$(TOUCH) $(PACKAGE_DIR)$/so_add_binary
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_add_binary
diff --git a/jpeg/makefile.mk b/jpeg/makefile.mk
index 0f5f5e0aba64..b2553dd1b4f2 100644
--- a/jpeg/makefile.mk
+++ b/jpeg/makefile.mk
@@ -43,6 +43,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=jpeg-6b
+TARFILE_MD5=dbd5f3b47ed13132f04c685d608a7547
PATCH_FILES=jpeg-6b.patch
ADDITIONAL_FILES=makefile.mk \
diff --git a/libxml2/makefile.mk b/libxml2/makefile.mk
index 490c9c2bd289..93275b65b2d8 100644
--- a/libxml2/makefile.mk
+++ b/libxml2/makefile.mk
@@ -45,6 +45,7 @@ all:
LIBXML2VERSION=2.7.6
TARFILE_NAME=$(PRJNAME)-$(LIBXML2VERSION)
+TARFILE_MD5=7740a8ec23878a2f50120e1faa2730f2
PATCH_FILES=libxml2-configure.patch \
libxml2-mingw.patch \
libxml2-gnome599717.patch \
diff --git a/libxslt/makefile.mk b/libxslt/makefile.mk
index afb3225bc847..b3f9ed203653 100644
--- a/libxslt/makefile.mk
+++ b/libxslt/makefile.mk
@@ -49,6 +49,7 @@ all:
LIBXSLTVERSION=$(LIBXSLT_MAJOR).$(LIBXSLT_MINOR).$(LIBXSLT_MICRO)
TARFILE_NAME=$(PRJNAME)-$(LIBXSLTVERSION)
+TARFILE_MD5=e61d0364a30146aaa3001296f853b2b9
PATCH_FILES=libxslt-configure.patch \
libxslt-win_manifest.patch \
libxslt-gnome602728.patch
diff --git a/moz/extractfiles.mk b/moz/extractfiles.mk
index c8d88c015411..dedfade257db 100644
--- a/moz/extractfiles.mk
+++ b/moz/extractfiles.mk
@@ -386,10 +386,6 @@ $(INCCOM)$/nsBuildID.h: $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE)
$(MISC)$/build$/so_moz_include_files: $(INCCOM)$/nsBuildID.h
-.IF "$(USE_SHELL)"=="4nt"
- $(COPY) /QSZ $(INCLUDE_PATH)* $(INCLUDE_DIR)
- $(COPY) /QSZ $(PUBLIC_PATH)* $(INCLUDE_DIR)
-.ELSE
.IF "$(OS)"!="SOLARIS"
$(GNUCOPY) -pRL $(INCLUDE_PATH)* $(INCLUDE_DIR)
$(GNUCOPY) -pRL $(PUBLIC_PATH)* $(INCLUDE_DIR)
@@ -397,7 +393,6 @@ $(MISC)$/build$/so_moz_include_files: $(INCCOM)$/nsBuildID.h
$(COPY) -pr $(INCLUDE_PATH)* $(INCLUDE_DIR)
$(COPY) -pr $(PUBLIC_PATH)* $(INCLUDE_DIR)
.ENDIF # "$(OS)"!="SOLARIS"
-.ENDIF
.IF "$(GUI)"=="UNX"
chmod -R 775 $(INCCOM)
diff --git a/moz/makefile.mk b/moz/makefile.mk
index 96ea794e8532..050d923c48e7 100644
--- a/moz/makefile.mk
+++ b/moz/makefile.mk
@@ -78,12 +78,14 @@ XLDOPTS:= -B$(SYSBASE)/usr/lib -B$(SYSBASE)/usr/lib/system -lmathCommon
MOZILLA_VERSION=1.1.14
TARFILE_NAME=seamonkey-$(MOZILLA_VERSION).source
+TARFILE_MD5=a169ab152209200a7bad29a275cb0333
TARFILE_ROOTDIR=mozilla
PATCH_FILES = \
seamonkey-source-$(MOZILLA_VERSION).patch \
patches/dtoa.patch \
patches/respect_disable_pango.patch \
+ patches/arm_build_fix.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)
@@ -167,13 +169,7 @@ MOZ_CROSSCOMPILE=CROSS_COMPILE=1 CC="$(CC) -arch $(MOZ_ARCH)" CXX="$(CXX) -arch
CONFIGURE_ACTION=$(null,$(MOZ_ARCH) $(NULL) $(MOZ_CROSSCOMPILE)) ../configure $(MOZILLA_CONFIGURE_FLAGS)
-.IF "$(USE_SHELL)"!="4nt"
BUILD_ACTION:=$(GNUMAKE) -j$(EXTMAXPROCESS)
-.ELSE
-# This construct is needed because unitools.mk defines GNUMAKE using $ENV_TOOLS.
-# $ENV_TOOLS doesn't exist for OOo builds and the cygwin make is needed.
-BUILD_ACTION:=make
-.ENDIF
.IF "$(GUI)"=="UNX"
.IF "$(COMNAME)"=="sunpro5"
@@ -243,7 +239,6 @@ MOZTOOLSINST:=$(MISC)$/build$/moztoolsinst
.ELSE
MOZTOOLS_EXTRACT:=$(MISC)$/build$/moztools
.ENDIF
-.IF "$(USE_SHELL)"!="4nt"
.IF "$(COM)"=="GCC"
MOZ_TOOLS_DOS:=$(shell @cygpath -ad "$(MISC)")\build\moztoolsinst
PATH!:=$(PATH):$(shell @cygpath $(MOZ_TOOLS_DOS))/bin:$(shell @cygpath $(MOZ_TOOLS_DOS))/vc71/bin
@@ -252,11 +247,6 @@ SET_MOZ_TOOLS_INSTALL_BAT:=export "MOZ_TOOLS=$(MOZ_TOOLS_DOS)"
MOZ_TOOLS_DOS:=$(shell @cygpath -ad "$(MISC)")\build\moztools\vc8-moztools
PATH!:=$(shell @cygpath $(MOZ_TOOLS_DOS))/bin:$(PATH)
.ENDIF
-.ELSE # "$(USE_SHELL)"!="4nt"
-# MOZ_TOOLS must contain an absolute path
-MOZ_TOOLS_DOS:=$(shell @echo %@SFN[$(MISC)])\build\moztools\vc8-moztools
-PATH!:=$(MOZ_TOOLS_DOS)\bin;$(PATH)
-.ENDIF # "$(USE_SHELL)"!="4nt"
MOZ_TOOLS:=$(subst,\,/ $(MOZ_TOOLS_DOS))
.IF "$(COM)"=="GCC"
diff --git a/moz/patches/arm_build_fix.patch b/moz/patches/arm_build_fix.patch
new file mode 100644
index 000000000000..79368e5fe6db
--- /dev/null
+++ b/moz/patches/arm_build_fix.patch
@@ -0,0 +1,189 @@
+--- misc/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2010-01-29 08:39:01.000000000 +0000
++++ misc/build/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2010-01-29 08:41:01.000000000 +0000
+@@ -44,8 +44,21 @@
+ #error "This code is for Linux ARM only. Please check if it works for you, too.\nDepends strongly on gcc behaviour."
+ #endif
+
++#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4))
++/* This tells gcc3.4+ not to optimize away symbols.
++ * * @see http://gcc.gnu.org/gcc-3.4/changes.html
++ * */
++#define DONT_DROP_OR_WARN __attribute__((used))
++#else
++/* This tells older gccs not to warn about unused vairables.
++ * * @see http://docs.freebsd.org/info/gcc/gcc.info.Variable_Attributes.html
++ * */
++#define DONT_DROP_OR_WARN __attribute__((unused))
++#endif
++
+ /* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */
+-static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch");
++static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch")
++DONT_DROP_OR_WARN;
+
+ static nsresult
+ PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args)
+--- misc/mozilla/security/nss/cmd/shlibsign/Makefile 2010-02-05 13:13:56.000000000 +0000
++++ misc/build/mozilla/security/nss/cmd/shlibsign/Makefile 2010-02-05 13:14:16.000000000 +0000
+@@ -124,5 +124,5 @@
+ endif
+ endif
+
+-libs install :: $(CHECKLOC)
++libs install ::
+
+--- misc/mozilla/security/manager/Makefile.in 2010-02-05 13:27:25.000000000 +0000
++++ misc/build/mozilla/security/manager/Makefile.in 2010-02-05 13:28:00.000000000 +0000
+@@ -53,7 +53,6 @@
+ SMIME3_LIB \
+ SSL3_LIB \
+ SOFTOKEN3_LIB \
+- SOFTOKEN3_CHK \
+ LOADABLE_ROOT_MODULE \
+ HAVE_FREEBL_LIBS \
+ HAVE_FREEBL_LIBS_32 \
+@@ -68,7 +67,6 @@
+ SMIME3_LIB = $(DLL_PREFIX)smime3$(DLL_SUFFIX)
+ SSL3_LIB = $(DLL_PREFIX)ssl3$(DLL_SUFFIX)
+ SOFTOKEN3_LIB = $(DLL_PREFIX)softokn3$(DLL_SUFFIX)
+-SOFTOKEN3_CHK = $(DLL_PREFIX)softokn3.chk
+
+ # Default
+ HAVE_FREEBL_LIBS = 1
+@@ -99,23 +97,17 @@
+
+ ifdef HAVE_FREEBL_LIBS
+ FREEBL_LIB = $(DLL_PREFIX)freebl3$(DLL_SUFFIX)
+-FREEBL_CHK = $(DLL_PREFIX)freebl3.chk
+ endif
+ ifdef HAVE_FREEBL_LIBS_32
+ FREEBL_32INT_LIB = libfreebl_32int_3$(DLL_SUFFIX)
+-FREEBL_32INT_CHK = libfreebl_32int_3.chk
+ FREEBL_32FPU_LIB = libfreebl_32fpu_3$(DLL_SUFFIX)
+-FREEBL_32FPU_CHK = libfreebl_32fpu_3.chk
+ endif
+ ifdef HAVE_FREEBL_LIBS_32INT64
+ FREEBL_32INT64_LIB = libfreebl_32int64_3$(DLL_SUFFIX)
+-FREEBL_32INT64_CHK = libfreebl_32int64_3.chk
+ endif
+ ifdef HAVE_FREEBL_LIBS_64
+ FREEBL_64INT_LIB = libfreebl_64int_3$(DLL_SUFFIX)
+-FREEBL_64INT_CHK = libfreebl_64int_3.chk
+ FREEBL_64FPU_LIB = libfreebl_64fpu_3$(DLL_SUFFIX)
+-FREEBL_64FPU_CHK = libfreebl_64fpu_3.chk
+ endif
+
+ ABS_DIST := $(shell cd $(DIST) && pwd)
+@@ -210,7 +202,6 @@
+ OS_ARCH="$(OS_ARCH)" \
+ CPU_ARCH="$(TARGET_CPU)" \
+ $(NULL)
+-SKIP_CHK=1
+ endif
+ SUBMAKEFILES = boot/Makefile ssl/Makefile pki/Makefile locales/Makefile
+
+@@ -223,10 +214,6 @@
+ ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
+-ifndef SKIP_CHK
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS) clean
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
+-endif
+ touch $@
+ endif
+
+@@ -262,43 +249,22 @@
+ # In NSS 3.11.8-3.11.9, lib/ssl/derive.c includes cmd/lib/secutil.h.
+ $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS) export
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) DIRS="util base dev pki pki1 certdb certhigh pk11wrap cryptohi nss ssl pkcs12 pkcs7 smime crmf jar ckfw ckfw/builtins"
+-ifndef SKIP_CHK
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS)
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS)
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(LOADABLE_ROOT_MODULE) $(DIST)/bin
+-ifndef SKIP_CHK
+- $(INSTALL) -m 644 $(DIST)/lib/$(SOFTOKEN3_CHK) $(DIST)/bin
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(SOFTOKEN3_LIB) $(DIST)/bin
+ $(INSTALL) -m 755 $(DIST)/lib/$(NSS3_LIB) $(DIST)/bin
+ $(INSTALL) -m 755 $(DIST)/lib/$(SSL3_LIB) $(DIST)/bin
+ $(INSTALL) -m 755 $(DIST)/lib/$(SMIME3_LIB) $(DIST)/bin
+ ifdef HAVE_FREEBL_LIBS
+-ifndef SKIP_CHK
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_CHK) $(DIST)/bin
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_LIB) $(DIST)/bin
+ endif
+ ifdef HAVE_FREEBL_LIBS_32
+-ifndef SKIP_CHK
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_32INT_CHK) $(DIST)/bin
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_32FPU_CHK) $(DIST)/bin
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_32INT_LIB) $(DIST)/bin
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_32FPU_LIB) $(DIST)/bin
+ endif
+ ifdef HAVE_FREEBL_LIBS_32INT64
+-ifndef SKIP_CHK
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_32INT64_CHK) $(DIST)/bin
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_32INT64_LIB) $(DIST)/bin
+ endif
+ ifdef HAVE_FREEBL_LIBS_64
+-ifndef SKIP_CHK
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_64INT_CHK) $(DIST)/bin
+- $(INSTALL) -m 644 $(DIST)/lib/$(FREEBL_64FPU_CHK) $(DIST)/bin
+-endif
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_64INT_LIB) $(DIST)/bin
+ $(INSTALL) -m 755 $(DIST)/lib/$(FREEBL_64FPU_LIB) $(DIST)/bin
+ endif
+@@ -313,38 +279,21 @@
+ install::
+ ifndef MOZ_NATIVE_NSS
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(LOADABLE_ROOT_MODULE) $(DESTDIR)$(mozappdir)
+-ifndef SKIP_CHK
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(SOFTOKEN3_CHK) $(DESTDIR)$(mozappdir)
+-endif
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(SOFTOKEN3_LIB) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(NSS3_LIB) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(SSL3_LIB) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(SMIME3_LIB) $(DESTDIR)$(mozappdir)
+ ifdef HAVE_FREEBL_LIBS
+-ifndef SKIP_CHK
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_CHK) $(DESTDIR)$(mozappdir)
+-endif
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_LIB) $(DESTDIR)$(mozappdir)
+ endif
+ ifdef HAVE_FREEBL_LIBS_32
+-ifndef SKIP_CHK
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_32INT_CHK) $(DESTDIR)$(mozappdir)
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_32FPU_CHK) $(DESTDIR)$(mozappdir)
+-endif
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_32INT_LIB) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_32FPU_LIB) $(DESTDIR)$(mozappdir)
+ endif
+ ifdef HAVE_FREEBL_LIBS_32INT64
+-ifndef SKIP_CHK
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_32INT64_CHK) $(DESTDIR)$(mozappdir)
+-endif
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_32INT64_LIB) $(DESTDIR)$(mozappdir)
+ endif
+ ifdef HAVE_FREEBL_LIBS_64
+-ifndef SKIP_CHK
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_64INT_CHK) $(DESTDIR)$(mozappdir)
+- $(SYSINSTALL) -m 644 $(DIST)/lib/$(FREEBL_64FPU_CHK) $(DESTDIR)$(mozappdir)
+-endif
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_64INT_LIB) $(DESTDIR)$(mozappdir)
+ $(SYSINSTALL) -m 755 $(DIST)/lib/$(FREEBL_64FPU_LIB) $(DESTDIR)$(mozappdir)
+ endif
+@@ -366,10 +315,6 @@
+ ifndef MOZ_NATIVE_NSS
+ $(MAKE) -C $(topsrcdir)/security/coreconf $(DEFAULT_GMAKE_FLAGS) clean
+ $(MAKE) -C $(topsrcdir)/security/nss/lib $(DEFAULT_GMAKE_FLAGS) clean
+-ifndef SKIP_CHK
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/lib $(DEFAULT_GMAKE_FLAGS) clean
+- $(MAKE) -C $(topsrcdir)/security/nss/cmd/shlibsign $(DEFAULT_GMAKE_FLAGS) clean
+-endif
+ endif
+
+ echo-requires-recursive::
diff --git a/neon/makefile.mk b/neon/makefile.mk
index f7dc137015c4..d296db7a3f98 100644
--- a/neon/makefile.mk
+++ b/neon/makefile.mk
@@ -1,7 +1,7 @@
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
+#
# Copyright 2000, 2010 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
@@ -46,20 +46,21 @@ TARGET=so_neon
@echo "neon disabled...."
.ENDIF
-NEON_NAME=neon-0.28.2
+NEON_NAME=neon-0.29.3
TARFILE_NAME=$(NEON_NAME)
+TARFILE_MD5=ba1015b59c112d44d7797b62fe7bee51
PATCH_FILES=neon.patch
-.IF "$(GUI)"=="WNT"
+.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
+ADDITIONAL_FILES=src$/makefile.mk src$/config.h
+BUILD_DIR=src
BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)
OUT2INC= \
diff --git a/neon/neon.patch b/neon/neon.patch
index 09233266b292..3d4e5019e0b7 100644
--- a/neon/neon.patch
+++ b/neon/neon.patch
@@ -1,5 +1,5 @@
---- misc/neon-0.28.2/src/config.h 2010-01-08 11:51:21.000000000 +0100
-+++ misc/build/neon-0.28.2/src/config.h 2010-01-08 11:53:42.000000000 +0100
+--- misc/neon-0.29.3/src/config.h 2010-03-23 14:47:43.000000000 +0100
++++ misc/build/neon-0.29.3/src/config.h 2010-03-23 12:19:50.000000000 +0100
@@ -1 +1,488 @@
-dummy
+
@@ -304,7 +304,7 @@
+#define NEON_IS_LIBRARY 1
+
+/* Define to be the neon version string */
-+#define NEON_VERSION "0.28.2"
++#define NEON_VERSION "0.29.3"
+
+/* Define to enable debugging */
+/* #undef NE_DEBUGGING */
@@ -360,10 +360,10 @@
+#define NE_VERSION_MAJOR (0)
+
+/* Define to be neon library minor version */
-+#define NE_VERSION_MINOR (28)
++#define NE_VERSION_MINOR (29)
+
+/* Define to be neon library patch version */
-+#define NE_VERSION_PATCH (2)
++#define NE_VERSION_PATCH (3)
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "neon@webdav.org"
@@ -372,13 +372,13 @@
+#define PACKAGE_NAME "neon"
+
+/* Define to the full name and version of this package. */
-+#define PACKAGE_STRING "neon 0.28.2"
++#define PACKAGE_STRING "neon 0.29.3"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "neon"
+
+/* Define to the version of this package. */
-+#define PACKAGE_VERSION "0.28.2"
++#define PACKAGE_VERSION "0.29.3"
+
+/* The size of a `int', as computed by sizeof. */
+#define SIZEOF_INT 4
@@ -490,9 +490,9 @@
+#else
+#define HAVE_NTLM 1
+#endif
---- misc/neon-0.28.2/src/makefile.mk 2010-01-08 11:51:21.000000000 +0100
-+++ misc/build/neon-0.28.2/src/makefile.mk 2010-01-08 11:53:27.000000000 +0100
-@@ -1 +1,100 @@
+--- misc/neon-0.29.3/src/makefile.mk 2010-03-23 14:47:43.000000000 +0100
++++ misc/build/neon-0.29.3/src/makefile.mk 2010-03-23 14:45:21.000000000 +0100
+@@ -1 +1,102 @@
-dummy
+PRJ=..$/..$/..$/..$/..
+
@@ -500,6 +500,7 @@
+TARGET=neon
+LIBTARGET=NO
+USE_DEFFILE=TRUE
++NO_DEFAULT_STL=TRUE
+EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
+UWINAPILIB=
+
@@ -531,7 +532,7 @@
+
+SLOFILES= \
+ $(SLO)$/ne_207.obj \
-+ $(SLO)$/ne_acl.obj \
++ $(SLO)$/ne_acl3744.obj \
+ $(SLO)$/ne_alloc.obj \
+ $(SLO)$/ne_auth.obj \
+ $(SLO)$/ne_basic.obj \
@@ -545,6 +546,7 @@
+ $(SLO)$/ne_request.obj \
+ $(SLO)$/ne_session.obj \
+ $(SLO)$/ne_socket.obj \
++ $(SLO)$/ne_socks.obj \
+ $(SLO)$/ne_string.obj \
+ $(SLO)$/ne_uri.obj \
+ $(SLO)$/ne_utils.obj \
@@ -594,62 +596,26 @@
+# --- 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 2010-01-08 11:30:06.000000000 +0100
-@@ -77,6 +77,10 @@
- #include "ne_sspi.h"
- #endif
-
-+#ifdef HAVE_NTLM
-+#include "ne_ntlm.h"
-+#endif
-+
- #define HOOK_SERVER_ID "http://webdav.org/neon/hooks/server-auth"
- #define HOOK_PROXY_ID "http://webdav.org/neon/hooks/proxy-auth"
-
-@@ -173,6 +177,10 @@
- char *sspi_token;
- void *sspi_context;
- #endif
-+#ifdef HAVE_NTLM
-+ /* This is used for NTLM auth */
-+ ne_ntlm_context *ntlm_context;
-+#endif
- /* These all used for Digest auth */
- char *realm;
- char *nonce;
-@@ -287,6 +295,11 @@
- ne_sspi_destroy_context(sess->sspi_context);
- sess->sspi_context = NULL;
- #endif
-+#ifdef HAVE_NTLM
-+ ne_ntlm_destroy_context(sess->ntlm_context);
-+ sess->ntlm_context = NULL;
-+#endif
-+ sess->protocol = NULL;
- }
-
- /* Returns client nonce string. */
-@@ -351,7 +364,7 @@
+--- misc/neon-0.29.3/src/ne_auth.c 2009-12-30 22:29:30.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_auth.c 2010-03-23 12:19:50.000000000 +0100
+@@ -367,7 +367,7 @@
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, chall->protocol->name, sess->realm,
chall->handler->attempt++, sess->username, pwbuf) == 0) {
return 0;
} else {
-@@ -598,7 +611,8 @@
+@@ -617,6 +617,7 @@
int ntlm = ne_strcasecmp(parms->protocol->name, "NTLM") == 0;
int status;
char *response = NULL;
--
-+ char password[NE_ABUFSIZ];
-+
++ char password[NE_ABUFSIZ];
+
NE_DEBUG(NE_DBG_HTTPAUTH, "auth: SSPI challenge.\n");
- if (!sess->sspi_context) {
-@@ -614,8 +628,17 @@
+@@ -633,8 +634,17 @@
return status;
}
}
@@ -668,95 +634,8 @@
if (status) {
return status;
}
-@@ -685,6 +708,62 @@
- return invalid;
- }
-
-+#ifdef HAVE_NTLM
-+
-+static char *request_ntlm(auth_session *sess, struct auth_request *request)
-+{
-+ char *token = ne_ntlm_getRequestToken(sess->ntlm_context);
-+ if (token) {
-+ char * req = ne_concat(sess->protocol->name, " ", token, "\r\n", NULL);
-+ ne_free(token);
-+ return req;
-+ } else {
-+ return NULL;
-+ }
-+}
-+
-+static int ntlm_challenge(auth_session *sess, int attempt,
-+ struct auth_challenge *parms,
-+ 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];
-+
-+ if (get_credentials(sess, errmsg, attempt, parms, password)) {
-+ /* Failed to get credentials */
-+ return -1;
-+ }
-+
-+ if (sess->ntlm_context) {
-+ status = ne_ntlm_destroy_context(sess->ntlm_context);
-+ sess->ntlm_context = NULL;
-+ if (status) {
-+ return status;
-+ }
-+ }
-+
-+ status = ne_ntlm_create_context(&sess->ntlm_context,
-+ sess->username,
-+ password);
-+ if (status) {
-+ return status;
-+ }
-+ }
-+
-+ status = ne_ntlm_authenticate(sess->ntlm_context, parms->opaque);
-+ if (status) {
-+ return status;
-+ }
-+
-+ return 0;
-+}
-+#endif /* HAVE_NTLM */
-+
-+
- /* Examine a digest challenge: return 0 if it is a valid Digest challenge,
- * else non-zero. */
- static int digest_challenge(auth_session *sess, int attempt,
-@@ -1134,6 +1213,11 @@
- sspi_challenge, request_sspi, NULL,
- AUTH_FLAG_OPAQUE_PARAM|AUTH_FLAG_VERIFY_NON40x|AUTH_FLAG_CONN_AUTH },
- #endif
-+#ifdef HAVE_NTLM
-+ { NE_AUTH_NEGOTIATE, 30, "NTLM",
-+ ntlm_challenge, request_ntlm, NULL,
-+ AUTH_FLAG_OPAQUE_PARAM|AUTH_FLAG_VERIFY_NON40x|AUTH_FLAG_CONN_AUTH },
-+#endif
- { 0 }
- };
-
-@@ -1431,6 +1515,11 @@
- ne_sspi_clear_context(sess->sspi_context);
- }
- #endif
-+#ifdef HAVE_NTLM
-+ if (sess->ntlm_context) {
-+ ne_ntlm_clear_context(sess->ntlm_context);
-+ }
-+#endif
-
- return ret;
- }
---- misc/neon-0.28.2/src/ne_auth.h 2007-12-05 17:39:58.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_auth.h 2010-01-08 11:30:07.000000000 +0100
+--- misc/neon-0.29.3/src/ne_auth.h 2009-09-01 22:13:12.000000000 +0200
++++ misc/build/neon-0.29.3/src/ne_auth.h 2010-03-23 12:19:50.000000000 +0100
@@ -47,8 +47,8 @@
* Hint: if you just wish to attempt authentication just once (even if
* the user gets the username/password wrong), have the callback
@@ -768,8 +647,8 @@
/* Set callbacks to provide credentials for server and proxy
* authentication, using the default set of authentication protocols.
---- misc/neon-0.28.2/src/ne_defs.h 2006-10-24 21:40:09.000000000 +0200
-+++ misc/build/neon-0.28.2/src/ne_defs.h 2010-01-08 11:30:07.000000000 +0100
+--- misc/neon-0.29.3/src/ne_defs.h 2009-09-02 16:04:43.000000000 +0200
++++ misc/build/neon-0.29.3/src/ne_defs.h 2010-03-23 12:19:50.000000000 +0100
@@ -41,7 +41,7 @@
#endif
@@ -779,8 +658,8 @@
#define ssize_t int
#endif
---- misc/neon-0.28.2/src/ne_locks.c 2007-02-05 11:09:27.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_locks.c 2010-01-08 11:30:06.000000000 +0100
+--- misc/neon-0.29.3/src/ne_locks.c 2007-02-05 11:09:27.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_locks.c 2010-03-23 12:19:50.000000000 +0100
@@ -579,6 +579,23 @@
const char *token = ne_get_response_header(ctx->req, "Lock-Token");
/* at the root element; retrieve the Lock-Token header,
@@ -847,8 +726,8 @@
ctx->found = 1;
}
}
---- misc/neon-0.28.2/src/ne_locks.h 2006-01-02 12:43:19.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_locks.h 2010-01-08 11:30:07.000000000 +0100
+--- misc/neon-0.29.3/src/ne_locks.h 2006-01-02 12:43:19.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_locks.h 2010-03-23 12:19:50.000000000 +0100
@@ -22,6 +22,10 @@
#ifndef NE_LOCKS_H
#define NE_LOCKS_H
@@ -860,773 +739,8 @@
#include "ne_request.h" /* for ne_session + ne_request */
#include "ne_uri.h" /* for ne_uri */
---- misc/neon-0.28.2/src/ne_ntlm.c 2010-01-08 11:51:21.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_ntlm.c 2010-01-08 11:53:52.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>
-+
-+ This library is free software; you can redistribute it and/or
-+ 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
-+ Library General Public License for more details.
-+
-+ You should have received a copy of the GNU Library General Public
-+ License along with this library; if not, write to the Free
-+ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-+ MA 02111-1307, USA
-+
-+*/
-+
-+/* NTLM details:
-+
-+ http://davenport.sourceforge.net/ntlm.html
-+ http://www.innovation.ch/java/ntlm.html
-+
-+*/
-+
-+#include "ne_ntlm.h"
-+
-+#ifdef HAVE_NTLM
-+
-+#include "ne_string.h"
-+
-+typedef enum {
-+ NTLMSTATE_NONE,
-+ NTLMSTATE_TYPE1,
-+ NTLMSTATE_TYPE2,
-+ NTLMSTATE_TYPE3,
-+ NTLMSTATE_LAST
-+} NTLMState;
-+
-+struct ne_ntlm_context_s {
-+ NTLMState state;
-+ unsigned char nonce[8];
-+ char *user;
-+ char *passwd;
-+ char *requestToken;
-+};
-+
-+typedef enum {
-+ NTLM_NONE, /* not a ntlm */
-+ NTLM_BAD, /* an ntlm, but one we don't like */
-+ NTLM_FIRST, /* the first 401-reply we got with NTLM */
-+ NTLM_FINE, /* an ntlm we act on */
-+
-+ NTLM_LAST /* last entry in this enum, don't use */
-+} ntlm;
-+
-+/* Flag bits definitions based on http://davenport.sourceforge.net/ntlm.html */
-+
-+#define NTLMFLAG_NEGOTIATE_UNICODE (1<<0)
-+/* Indicates that Unicode strings are supported for use in security buffer
-+ data. */
-+
-+#define NTLMFLAG_NEGOTIATE_OEM (1<<1)
-+/* Indicates that OEM strings are supported for use in security buffer data. */
-+
-+#define NTLMFLAG_REQUEST_TARGET (1<<2)
-+/* Requests that the server's authentication realm be included in the Type 2
-+ message. */
-+
-+/* unknown (1<<3) */
-+#define NTLMFLAG_NEGOTIATE_SIGN (1<<4)
-+/* Specifies that authenticated communication between the client and server
-+ should carry a digital signature (message integrity). */
-+
-+#define NTLMFLAG_NEGOTIATE_SEAL (1<<5)
-+/* Specifies that authenticated communication between the client and server
-+ should be encrypted (message confidentiality). */
-+
-+#define NTLMFLAG_NEGOTIATE_DATAGRAM_STYLE (1<<6)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_NEGOTIATE_LM_KEY (1<<7)
-+/* Indicates that the LAN Manager session key should be used for signing and
-+ sealing authenticated communications. */
-+
-+#define NTLMFLAG_NEGOTIATE_NETWARE (1<<8)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_NEGOTIATE_NTLM_KEY (1<<9)
-+/* Indicates that NTLM authentication is being used. */
-+
-+/* unknown (1<<10) */
-+/* unknown (1<<11) */
-+
-+#define NTLMFLAG_NEGOTIATE_DOMAIN_SUPPLIED (1<<12)
-+/* Sent by the client in the Type 1 message to indicate that a desired
-+ authentication realm is included in the message. */
-+
-+#define NTLMFLAG_NEGOTIATE_WORKSTATION_SUPPLIED (1<<13)
-+/* Sent by the client in the Type 1 message to indicate that the client
-+ workstation's name is included in the message. */
-+
-+#define NTLMFLAG_NEGOTIATE_LOCAL_CALL (1<<14)
-+/* Sent by the server to indicate that the server and client are on the same
-+ machine. Implies that the client may use a pre-established local security
-+ context rather than responding to the challenge. */
-+
-+#define NTLMFLAG_NEGOTIATE_ALWAYS_SIGN (1<<15)
-+/* Indicates that authenticated communication between the client and server
-+ should be signed with a "dummy" signature. */
-+
-+#define NTLMFLAG_TARGET_TYPE_DOMAIN (1<<16)
-+/* Sent by the server in the Type 2 message to indicate that the target
-+ authentication realm is a domain. */
-+
-+#define NTLMFLAG_TARGET_TYPE_SERVER (1<<17)
-+/* Sent by the server in the Type 2 message to indicate that the target
-+ authentication realm is a server. */
-+
-+#define NTLMFLAG_TARGET_TYPE_SHARE (1<<18)
-+/* Sent by the server in the Type 2 message to indicate that the target
-+ authentication realm is a share. Presumably, this is for share-level
-+ authentication. Usage is unclear. */
-+
-+#define NTLMFLAG_NEGOTIATE_NTLM2_KEY (1<<19)
-+/* Indicates that the NTLM2 signing and sealing scheme should be used for
-+ protecting authenticated communications. */
-+
-+#define NTLMFLAG_REQUEST_INIT_RESPONSE (1<<20)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_REQUEST_ACCEPT_RESPONSE (1<<21)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_REQUEST_NONNT_SESSION_KEY (1<<22)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_NEGOTIATE_TARGET_INFO (1<<23)
-+/* Sent by the server in the Type 2 message to indicate that it is including a
-+ Target Information block in the message. */
-+
-+/* unknown (1<24) */
-+/* unknown (1<25) */
-+/* unknown (1<26) */
-+/* unknown (1<27) */
-+/* unknown (1<28) */
-+
-+#define NTLMFLAG_NEGOTIATE_128 (1<<29)
-+/* Indicates that 128-bit encryption is supported. */
-+
-+#define NTLMFLAG_NEGOTIATE_KEY_EXCHANGE (1<<30)
-+/* unknown purpose */
-+
-+#define NTLMFLAG_NEGOTIATE_56 (1<<31)
-+/* Indicates that 56-bit encryption is supported. */
-+
-+#ifdef HAVE_OPENSSL
-+/* We need OpenSSL for the crypto lib to provide us with MD4 and DES */
-+
-+/* -- WIN32 approved -- */
-+#include <stdio.h>
-+#include <string.h>
-+#include <stdarg.h>
-+#include <stdlib.h>
-+#include <ctype.h>
-+
-+#include <openssl/des.h>
-+#include <openssl/md4.h>
-+#include <openssl/ssl.h>
-+
-+#if OPENSSL_VERSION_NUMBER < 0x00907001L
-+#define DES_key_schedule des_key_schedule
-+#define DES_cblock des_cblock
-+#define DES_set_odd_parity des_set_odd_parity
-+#define DES_set_key des_set_key
-+#define DES_ecb_encrypt des_ecb_encrypt
-+
-+/* This is how things were done in the old days */
-+#define DESKEY(x) x
-+#define DESKEYARG(x) x
-+#else
-+/* Modern version */
-+#define DESKEYARG(x) *x
-+#define DESKEY(x) &x
-+#endif
-+
-+/* Define this to make the type-3 message include the NT response message */
-+#define USE_NTRESPONSES 1
-+
-+/*
-+ (*) = A "security buffer" is a triplet consisting of two shorts and one
-+ long:
-+
-+ 1. a 'short' containing the length of the buffer in bytes
-+ 2. a 'short' containing the allocated space for the buffer in bytes
-+ 3. a 'long' containing the offset to the start of the buffer from the
-+ beginning of the NTLM message, in bytes.
-+*/
-+
-+static ntlm ne_input_ntlm(ne_ntlm_context *ctx,
-+ const char *responseToken)
-+{
-+ if(responseToken) {
-+ /* We got a type-2 message here:
-+
-+ Index Description Content
-+ 0 NTLMSSP Signature Null-terminated ASCII "NTLMSSP"
-+ (0x4e544c4d53535000)
-+ 8 NTLM Message Type long (0x02000000)
-+ 12 Target Name security buffer(*)
-+ 20 Flags long
-+ 24 Challenge 8 bytes
-+ (32) Context (optional) 8 bytes (two consecutive longs)
-+ (40) Target Information (optional) security buffer(*)
-+ 32 (48) start of data block
-+ */
-+ unsigned char * buffer = NULL;
-+
-+ int size = ne_unbase64(responseToken, &buffer);
-+
-+ ctx->state = NTLMSTATE_TYPE2; /* we got a type-2 */
-+
-+ if(size >= 48)
-+ /* the nonce of interest is index [24 .. 31], 8 bytes */
-+ memcpy(ctx->nonce, &buffer[24], 8);
-+
-+ /* at index decimal 20, there's a 32bit NTLM flag field */
-+
-+ if (buffer) ne_free(buffer);
-+ }
-+ else {
-+ if(ctx->state >= NTLMSTATE_TYPE1)
-+ return NTLM_BAD;
-+
-+ ctx->state = NTLMSTATE_TYPE1; /* we should sent away a type-1 */
-+ }
-+ return NTLM_FINE;
-+}
-+
-+/*
-+ * Turns a 56 bit key into the 64 bit, odd parity key and sets the key. The
-+ * key schedule ks is also set.
-+ */
-+static void setup_des_key(unsigned char *key_56,
-+ DES_key_schedule DESKEYARG(ks))
-+{
-+ DES_cblock key;
-+
-+ key[0] = key_56[0];
-+ key[1] = ((key_56[0] << 7) & 0xFF) | (key_56[1] >> 1);
-+ key[2] = ((key_56[1] << 6) & 0xFF) | (key_56[2] >> 2);
-+ key[3] = ((key_56[2] << 5) & 0xFF) | (key_56[3] >> 3);
-+ key[4] = ((key_56[3] << 4) & 0xFF) | (key_56[4] >> 4);
-+ key[5] = ((key_56[4] << 3) & 0xFF) | (key_56[5] >> 5);
-+ key[6] = ((key_56[5] << 2) & 0xFF) | (key_56[6] >> 6);
-+ key[7] = (key_56[6] << 1) & 0xFF;
-+
-+ DES_set_odd_parity(&key);
-+ DES_set_key(&key, ks);
-+}
-+
-+ /*
-+ * takes a 21 byte array and treats it as 3 56-bit DES keys. The
-+ * 8 byte plaintext is encrypted with each key and the resulting 24
-+ * bytes are stored in the results array.
-+ */
-+static void calc_resp(unsigned char *keys,
-+ unsigned char *plaintext,
-+ unsigned char *results)
-+{
-+ DES_key_schedule ks;
-+
-+ setup_des_key(keys, DESKEY(ks));
-+ DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) results,
-+ DESKEY(ks), DES_ENCRYPT);
-+
-+ setup_des_key(keys+7, DESKEY(ks));
-+ DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) (results+8),
-+ DESKEY(ks), DES_ENCRYPT);
-+
-+ setup_des_key(keys+14, DESKEY(ks));
-+ DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) (results+16),
-+ DESKEY(ks), DES_ENCRYPT);
-+}
-+
-+/*
-+ * Set up lanmanager and nt hashed passwords
-+ */
-+static void mkhash(char *password,
-+ unsigned char *nonce, /* 8 bytes */
-+ unsigned char *lmresp /* must fit 0x18 bytes */
-+#ifdef USE_NTRESPONSES
-+ , unsigned char *ntresp /* must fit 0x18 bytes */
-+#endif
-+ )
-+{
-+ unsigned char lmbuffer[21];
-+#ifdef USE_NTRESPONSES
-+ unsigned char ntbuffer[21];
-+#endif
-+ unsigned char *pw;
-+ static const unsigned char magic[] = {
-+ 0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25
-+ };
-+ int i;
-+ int len = strlen(password);
-+
-+ /* make it fit at least 14 bytes */
-+ pw = malloc(len<7?14:len*2);
-+ if(!pw)
-+ return; /* this will lead to a badly generated package */
-+
-+ if (len > 14)
-+ len = 14;
-+
-+ for (i=0; i<len; i++)
-+ pw[i] = toupper(password[i]);
-+
-+ for (; i<14; i++)
-+ pw[i] = 0;
-+
-+ {
-+ /* create LanManager hashed password */
-+ DES_key_schedule ks;
-+
-+ 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);
-+
-+ memset(lmbuffer+16, 0, 5);
-+ }
-+ /* create LM responses */
-+ calc_resp(lmbuffer, nonce, lmresp);
-+
-+#ifdef USE_NTRESPONSES
-+ {
-+ /* create NT hashed password */
-+ MD4_CTX MD4;
-+
-+ len = strlen(password);
-+
-+ for (i=0; i<len; i++) {
-+ pw[2*i] = password[i];
-+ pw[2*i+1] = 0;
-+ }
-+
-+ MD4_Init(&MD4);
-+ MD4_Update(&MD4, pw, 2*len);
-+ MD4_Final(ntbuffer, &MD4);
-+
-+ memset(ntbuffer+16, 0, 8);
-+ }
-+
-+ calc_resp(ntbuffer, nonce, ntresp);
-+#endif
-+
-+ free(pw);
-+}
-+
-+#define SHORTPAIR(x) ((x) & 0xff), ((x) >> 8)
-+#define LONGQUARTET(x) ((x) & 0xff), (((x) >> 8)&0xff), \
-+ (((x) >>16)&0xff), ((x)>>24)
-+
-+/* this is for creating ntlm header output */
-+static int ne_output_ntlm(ne_ntlm_context *ctx)
-+{
-+ const char *domain=""; /* empty */
-+ const char *host=""; /* empty */
-+ int domlen=strlen(domain);
-+ int hostlen = strlen(host);
-+ int hostoff; /* host name offset */
-+ int domoff; /* domain name offset */
-+ int size;
-+ unsigned char ntlmbuf[256]; /* enough, unless the host/domain is very long */
-+
-+ 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
-+ 0 NTLMSSP Signature Null-terminated ASCII "NTLMSSP"
-+ (0x4e544c4d53535000)
-+ 8 NTLM Message Type long (0x01000000)
-+ 12 Flags long
-+ 16 Supplied Domain security buffer(*)
-+ 24 Supplied Workstation security buffer(*)
-+ 32 start of data block
-+
-+ */
-+
-+ snprintf((char *)ntlmbuf, sizeof(ntlmbuf), "NTLMSSP%c"
-+ "\x01%c%c%c" /* 32-bit type = 1 */
-+ "%c%c%c%c" /* 32-bit NTLM flag field */
-+ "%c%c" /* domain length */
-+ "%c%c" /* domain allocated space */
-+ "%c%c" /* domain name offset */
-+ "%c%c" /* 2 zeroes */
-+ "%c%c" /* host length */
-+ "%c%c" /* host allocated space */
-+ "%c%c" /* host name offset */
-+ "%c%c" /* 2 zeroes */
-+ "%s" /* host name */
-+ "%s", /* domain string */
-+ 0, /* trailing zero */
-+ 0,0,0, /* part of type-1 long */
-+
-+ LONGQUARTET(
-+ NTLMFLAG_NEGOTIATE_OEM| /* 2 */
-+ NTLMFLAG_NEGOTIATE_NTLM_KEY /* 200 */
-+ /* equals 0x0202 */
-+ ),
-+ SHORTPAIR(domlen),
-+ SHORTPAIR(domlen),
-+ SHORTPAIR(domoff),
-+ 0,0,
-+ SHORTPAIR(hostlen),
-+ SHORTPAIR(hostlen),
-+ SHORTPAIR(hostoff),
-+ 0,0,
-+ host, domain);
-+
-+ /* initial packet length */
-+ size = 32 + hostlen + domlen;
-+
-+ /* now keeper of the base64 encoded package size */
-+ if (ctx->requestToken) ne_free(ctx->requestToken);
-+ ctx->requestToken = ne_base64(ntlmbuf, size);
-+
-+ break;
-+
-+ case NTLMSTATE_TYPE2:
-+ /* We received the type-2 already, create a type-3 message:
-+
-+ Index Description Content
-+ 0 NTLMSSP Signature Null-terminated ASCII "NTLMSSP"
-+ (0x4e544c4d53535000)
-+ 8 NTLM Message Type long (0x03000000)
-+ 12 LM/LMv2 Response security buffer(*)
-+ 20 NTLM/NTLMv2 Response security buffer(*)
-+ 28 Domain Name security buffer(*)
-+ 36 User Name security buffer(*)
-+ 44 Workstation Name security buffer(*)
-+ (52) Session Key (optional) security buffer(*)
-+ (60) Flags (optional) long
-+ 52 (64) start of data block
-+
-+ */
-+
-+ {
-+ int lmrespoff;
-+ int ntrespoff;
-+ int useroff;
-+ unsigned char lmresp[0x18]; /* fixed-size */
-+#ifdef USE_NTRESPONSES
-+ unsigned char ntresp[0x18]; /* fixed-size */
-+#endif
-+ const char *user;
-+ int userlen;
-+
-+ user = strchr(ctx->user, '\\');
-+ if(!user)
-+ user = strchr(ctx->user, '/');
-+
-+ if (user) {
-+ domain = ctx->user;
-+ domlen = user - domain;
-+ user++;
-+ }
-+ else
-+ user = ctx->user;
-+ userlen = strlen(user);
-+
-+ mkhash(ctx->passwd, &ctx->nonce[0], lmresp
-+#ifdef USE_NTRESPONSES
-+ , ntresp
-+#endif
-+ );
-+
-+ domoff = 64; /* always */
-+ useroff = domoff + domlen;
-+ hostoff = useroff + userlen;
-+ lmrespoff = hostoff + hostlen;
-+ ntrespoff = lmrespoff + 0x18;
-+
-+ /* Create the big type-3 message binary blob */
-+ size = snprintf((char *)ntlmbuf, sizeof(ntlmbuf),
-+ "NTLMSSP%c"
-+ "\x03%c%c%c" /* type-3, 32 bits */
-+
-+ "%c%c%c%c" /* LanManager length + allocated space */
-+ "%c%c" /* LanManager offset */
-+ "%c%c" /* 2 zeroes */
-+
-+ "%c%c" /* NT-response length */
-+ "%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 */
-+
-+ /* domain string */
-+ /* user string */
-+ /* host string */
-+ /* LanManager response */
-+ /* NT response */
-+ ,
-+ 0, /* zero termination */
-+ 0,0,0, /* type-3 long, the 24 upper bits */
-+
-+ SHORTPAIR(0x18), /* LanManager response length, twice */
-+ SHORTPAIR(0x18),
-+ SHORTPAIR(lmrespoff),
-+ 0x0, 0x0,
-+
-+#ifdef USE_NTRESPONSES
-+ SHORTPAIR(0x18), /* NT-response length, twice */
-+ SHORTPAIR(0x18),
-+#else
-+ 0x0, 0x0,
-+ 0x0, 0x0,
-+#endif
-+ SHORTPAIR(ntrespoff),
-+ 0x0, 0x0,
-+
-+ SHORTPAIR(domlen),
-+ SHORTPAIR(domlen),
-+ SHORTPAIR(domoff),
-+ 0x0, 0x0,
-+
-+ SHORTPAIR(userlen),
-+ SHORTPAIR(userlen),
-+ SHORTPAIR(useroff),
-+ 0x0, 0x0,
-+
-+ SHORTPAIR(hostlen),
-+ SHORTPAIR(hostlen),
-+ SHORTPAIR(hostoff),
-+ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-+
-+ 0x0, 0x0,
-+
-+ 0x0, 0x0);
-+
-+ /* size is now 64 */
-+ size=64;
-+ ntlmbuf[62]=ntlmbuf[63]=0;
-+
-+ /* Make sure that the user and domain strings fit in the target buffer
-+ before we copy them there. */
-+ if(size + userlen + domlen >= sizeof(ntlmbuf)) {
-+ return -1;
-+ }
-+
-+ memcpy(&ntlmbuf[size], domain, domlen);
-+ size += domlen;
-+
-+ memcpy(&ntlmbuf[size], user, userlen);
-+ size += userlen;
-+
-+ /* we append the binary hashes to the end of the blob */
-+ if(size < ((int)sizeof(ntlmbuf) - 0x18)) {
-+ memcpy(&ntlmbuf[size], lmresp, 0x18);
-+ size += 0x18;
-+ }
-+
-+#ifdef USE_NTRESPONSES
-+ if(size < ((int)sizeof(ntlmbuf) - 0x18)) {
-+ memcpy(&ntlmbuf[size], ntresp, 0x18);
-+ size += 0x18;
-+ }
-+#endif
-+
-+ ntlmbuf[56] = size & 0xff;
-+ ntlmbuf[57] = size >> 8;
-+
-+ /* convert the binary blob into base64 */
-+ ctx->requestToken = ne_base64(ntlmbuf, size);
-+
-+ ctx->state = NTLMSTATE_TYPE3; /* we sent a type-3 */
-+ }
-+ break;
-+
-+ case NTLMSTATE_TYPE3:
-+ /* connection is already authenticated,
-+ * don't send a header in future requests */
-+ if (ctx->requestToken) ne_free(ctx->requestToken);
-+ ctx->requestToken = NULL;
-+ break;
-+ }
-+
-+ return 0; /* OK */
-+}
-+
-+int ne_ntlm_create_context(ne_ntlm_context **context, const char *userName, const char *password)
-+{
-+ if (context == NULL) {
-+ return -1;
-+ } else {
-+ ne_ntlm_context *ctx = ne_calloc(sizeof(ne_ntlm_context));
-+
-+ ctx->state = NTLMSTATE_NONE;
-+ ctx->user = ne_strdup(userName);
-+ ctx->passwd = ne_strdup(password);
-+
-+ *context = ctx;
-+ return 0;
-+ }
-+}
-+
-+int ne_ntlm_destroy_context(ne_ntlm_context *context)
-+{
-+ if (context != NULL) {
-+ if (context->user)
-+ ne_free(context->user);
-+
-+ if (context->passwd)
-+ ne_free(context->passwd);
-+
-+ if (context->requestToken)
-+ ne_free(context->requestToken);
-+
-+ ne_free(context);
-+ }
-+ return 0;
-+}
-+
-+int ne_ntlm_clear_context(ne_ntlm_context *context)
-+{
-+ return 0;
-+}
-+
-+int ne_ntlm_authenticate(ne_ntlm_context *context, const char *responseToken)
-+{
-+ if (context == NULL) {
-+ return -1;
-+ } else {
-+ if (!responseToken && (context->state == NTLMSTATE_TYPE3))
-+ context->state = NTLMSTATE_NONE;
-+
-+ if (context->state <= NTLMSTATE_TYPE3) {
-+ ntlm ntlmstatus = ne_input_ntlm(context, responseToken);
-+
-+ if (ntlmstatus != NTLM_FINE) {
-+ return -1;
-+ }
-+ }
-+ }
-+ return ne_output_ntlm(context);
-+}
-+
-+char *ne_ntlm_getRequestToken(ne_ntlm_context *context)
-+{
-+ if (context == NULL) {
-+ return NULL;
-+ } else {
-+ if (context->requestToken) {
-+ char *ret = ne_strdup(context->requestToken);
-+ ne_free(context->requestToken);
-+ context->requestToken = NULL;
-+ return ret;
-+ } else {
-+ return NULL;
-+ }
-+ }
-+}
-+
-+#endif /* HAVE_OPENSSL */
-+#endif /* HAVE_NTLM */
---- misc/neon-0.28.2/src/ne_ntlm.h 2010-01-08 11:51:21.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_ntlm.h 2010-01-08 11:53:52.000000000 +0100
-@@ -1 +1,44 @@
--dummy
-+/*
-+ Handling of NTLM Authentication
-+ Copyright (C) 2009, Kai Sommerfeld <kso@openoffice.org>
-+
-+ This library is free software; you can redistribute it and/or
-+ 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
-+ Library General Public License for more details.
-+
-+ You should have received a copy of the GNU Library General Public
-+ License along with this library; if not, write to the Free
-+ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-+ MA 02111-1307, USA
-+
-+*/
-+#ifndef NE_NTLM_H
-+#define NE_NTLM_H
-+
-+#include "config.h"
-+
-+/* PRIVATE TO NEON -- NOT PART OF THE EXTERNAL API. */
-+
-+#ifdef HAVE_NTLM
-+
-+typedef struct ne_ntlm_context_s ne_ntlm_context;
-+
-+int ne_ntlm_create_context(ne_ntlm_context **context, const char *userName, const char *password);
-+
-+int ne_ntlm_destroy_context(ne_ntlm_context *context);
-+
-+int ne_ntlm_clear_context(ne_ntlm_context *context);
-+
-+int ne_ntlm_authenticate(ne_ntlm_context *context, const char *responseToken);
-+
-+char *ne_ntlm_getRequestToken(ne_ntlm_context *context);
-+
-+#endif /* HAVE_NTLM */
-+
-+#endif /* NE_NTLM_H */
---- misc/neon-0.28.2/src/ne_socket.c 2008-02-28 14:19:19.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_socket.c 2010-01-08 11:30:06.000000000 +0100
-@@ -60,6 +60,7 @@
- #include <stddef.h>
- #ifdef USE_GETADDRINFO
- #include <ws2tcpip.h>
-+#include <Wspiapi.h>
- #endif
- #endif
-
---- misc/neon-0.28.2/src/ne_sspi.c 2007-08-10 17:26:08.000000000 +0200
-+++ misc/build/neon-0.28.2/src/ne_sspi.c 2010-01-08 11:30:07.000000000 +0100
+--- misc/neon-0.29.3/src/ne_sspi.c 2007-08-10 17:26:08.000000000 +0200
++++ misc/build/neon-0.29.3/src/ne_sspi.c 2010-03-23 12:19:50.000000000 +0100
@@ -206,6 +206,45 @@
}
@@ -1712,8 +826,8 @@
securityStatus =
initializeSecurityContext(&sspiContext->credentials, NULL,
---- misc/neon-0.28.2/src/ne_sspi.h 2006-02-12 13:05:14.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_sspi.h 2010-01-08 11:30:06.000000000 +0100
+--- misc/neon-0.29.3/src/ne_sspi.h 2006-02-12 13:05:14.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_sspi.h 2010-03-23 12:19:50.000000000 +0100
@@ -41,7 +41,7 @@
int ne_sspi_clear_context(void *context);
@@ -1723,8 +837,8 @@
#endif /* HAVE_SSPI */
---- misc/neon-0.28.2/src/ne_uri.c 2007-12-05 12:04:47.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_uri.c 2010-01-08 11:30:06.000000000 +0100
+--- misc/neon-0.29.3/src/ne_uri.c 2007-12-05 12:04:47.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_uri.c 2010-03-23 12:19:50.000000000 +0100
@@ -42,7 +42,7 @@
#include "ne_alloc.h"
#include "ne_uri.h"
@@ -1770,8 +884,8 @@
/* 3x */ DG, DG, DG, DG, DG, DG, DG, DG, DG, DG, CL, SD, OT, SD, OT, QU,
/* 4x */ AT, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL,
/* 5x */ AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, AL, GD, OT, GD, OT, US,
---- misc/neon-0.28.2/src/ne_utils.c 2006-03-07 10:36:43.000000000 +0100
-+++ misc/build/neon-0.28.2/src/ne_utils.c 2010-01-08 11:30:06.000000000 +0100
+--- misc/neon-0.29.3/src/ne_utils.c 2006-03-07 10:36:43.000000000 +0100
++++ misc/build/neon-0.29.3/src/ne_utils.c 2010-03-23 12:19:50.000000000 +0100
@@ -118,6 +118,9 @@
#ifdef HAVE_GNUTLS
", GNU TLS " LIBGNUTLS_VERSION
@@ -1801,8 +915,8 @@
return 1;
#endif /* NE_HAVE_* */
default:
---- misc/neon-0.28.2/src/ne_utils.h 2007-07-16 08:54:57.000000000 +0200
-+++ misc/build/neon-0.28.2/src/ne_utils.h 2010-01-08 11:30:07.000000000 +0100
+--- misc/neon-0.29.3/src/ne_utils.h 2007-07-16 08:54:57.000000000 +0200
++++ misc/build/neon-0.29.3/src/ne_utils.h 2010-03-23 12:19:50.000000000 +0100
@@ -54,6 +54,7 @@
#define NE_FEATURE_SOCKS (5) /* SOCKSv5 support */
#define NE_FEATURE_TS_SSL (6) /* Thread-safe SSL/TLS support */
diff --git a/neon/neon_exports_unix.patch b/neon/neon_exports_unix.patch
index 1ee17690c8ed..f5c2ce8afea3 100644
--- a/neon/neon_exports_unix.patch
+++ b/neon/neon_exports_unix.patch
@@ -1,7 +1,7 @@
---- 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,287 @@
-+NEON_0_28_2 {
+--- misc/neon-0.29.3/src/exports.map 2009-09-29 10:28:13.531250000 +0200
++++ misc/build/neon-0.29.3/src/exports.map 2009-09-21 12:16:53.453125000 +0200
+@@ -0,0 +1,288 @@
++UDK_3_0_0 {
+ global:
+ ne__negotiate_ssl;
+ ne__ssl_exit;
@@ -125,6 +125,7 @@
+ ne_sock_peek;
+ ne_sock_peer;
+ ne_sock_prebind;
++ ne_sock_proxy;
+ ne_sock_read;
+ ne_sock_read_timeout;
+ ne_sock_readline;
@@ -275,7 +276,7 @@
+ ne_realloc;
+ ne_strdup;
+ ne_strndup;
-+ ne_acl_set;
++ ne_acl3744_set;
+ ne_207_create;
+ ne_207_destroy;
+ ne_207_get_current_propstat;
diff --git a/neon/neon_exports_win.patch b/neon/neon_exports_win.patch
index 479f03a9d6bc..85d73da2b41d 100644
--- a/neon/neon_exports_win.patch
+++ b/neon/neon_exports_win.patch
@@ -1,7 +1,7 @@
---- 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 {
+--- misc/neon-0.29.3/src/exports.map 2009-09-29 10:28:13.531250000 +0200
++++ misc/build/neon-0.29.3/src/exports.map 2009-09-21 12:16:53.453125000 +0200
+@@ -0,0 +1,294 @@
++UDK_3_0_0 {
+ global:
+ ne_sspi_authenticate;
+ ne_sspi_clear_context;
@@ -131,6 +131,7 @@
+ ne_sock_peek;
+ ne_sock_peer;
+ ne_sock_prebind;
++ ne_sock_proxy;
+ ne_sock_read;
+ ne_sock_read_timeout;
+ ne_sock_readline;
@@ -281,7 +282,8 @@
+ ne_realloc;
+ ne_strdup;
+ ne_strndup;
-+ ne_acl_set;
++ ne_free;
++ ne_acl3744_set;
+ ne_207_create;
+ ne_207_destroy;
+ ne_207_get_current_propstat;
diff --git a/neon/prj/build.lst b/neon/prj/build.lst
index 2a133605b11e..a9786c796bd2 100755
--- a/neon/prj/build.lst
+++ b/neon/prj/build.lst
@@ -1,3 +1,3 @@
-xh neon : OPENSSL:openssl soltools external EXPAT:expat LIBXML2:libxml2 NULL
+xh neon : OPENSSL:openssl ZLIB:zlib stlport soltools external EXPAT:expat LIBXML2:libxml2 NULL
xh neon usr1 - all xh_mkout NULL
xh neon nmake - all xh_neon NULL
diff --git a/neon/version.mk b/neon/version.mk
index 86716c5746f3..418999ff1452 100644
--- a/neon/version.mk
+++ b/neon/version.mk
@@ -28,9 +28,9 @@
# the major
NEON_MAJOR=0
# the minor
-NEON_MINOR=28
+NEON_MINOR=29
# the micro
-NEON_MICRO=2
+NEON_MICRO=3
# concat
NEON_VERSION=$(NEON_MAJOR)$(NEON_MINOR)$(NEON_MICRO)
diff --git a/nss/makefile.mk b/nss/makefile.mk
index 55b3e7d118f2..78de2a9afbf3 100644
--- a/nss/makefile.mk
+++ b/nss/makefile.mk
@@ -42,6 +42,7 @@ all:
.ENDIF
TARFILE_NAME=nss_3_12_5
+TARFILE_MD5=6244eb0b6e2647ee50470951fa6efb47
TARFILE_ROOTDIR=mozilla
PATCH_FILES=nss.patch
@@ -134,12 +135,8 @@ OUT2LIB= \
.ELSE # "$(COM)"=="GCC"
MOZ_MSVCVERSION= 9
.EXPORT : MOZ_MSVCVERSION
-.IF "$(USE_SHELL)"=="4nt"
-PATH!:=$(MOZILLABUILD)/msys/bin;$(MOZILLABUILD)/moztools/bin;$(PATH)
-.ELSE # $(USE_SHELL)"=="4nt"
moz_build:=$(shell cygpath -p $(MOZILLABUILD))
PATH!:=$(moz_build)/msys/bin:$(moz_build)/moztools/bin:$(PATH)
-.ENDIF # $(USE_SHELL)"=="4nt"
.EXPORT : PATH
#Using WINNT will cause at least that nspr4.dll, plc4.dll, plds4.dll
diff --git a/python/makefile.mk b/python/makefile.mk
index 93fdaa448a75..86d9835e8604 100644
--- a/python/makefile.mk
+++ b/python/makefile.mk
@@ -46,6 +46,7 @@ all:
TARFILE_NAME=Python-$(PYVERSION)
+TARFILE_MD5=e81c2f0953aa60f8062c05a4673f2be0
PATCH_FILES=\
Python-$(PYVERSION).patch \
Python-ssl.patch
@@ -78,7 +79,7 @@ CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) ./configure --prefix=$(MYCWD)/python-in
.IF "$(OS)$(CPU)" == "SOLARISI"
CONFIGURE_ACTION += --disable-ipv6
.ENDIF
-BUILD_ACTION=$(ENV_BUILD) $(GNUMAKE) -j$(EXTMAXPROCESS) ; $(GNUMAKE) install ; chmod -R ug+w $(MYCWD)/python-inst
+BUILD_ACTION=$(ENV_BUILD) $(GNUMAKE) -j$(EXTMAXPROCESS) && $(GNUMAKE) install && chmod -R ug+w $(MYCWD)/python-inst && chmod g+w Include
.ELSE
# ----------------------------------
# WINDOWS
@@ -93,7 +94,7 @@ python_LDFLAGS=-mno-cygwin -mthreads
python_LDFLAGS+=-shared-libgcc
.ENDIF
CONFIGURE_ACTION=./configure --prefix=$(MYCWD)/python-inst --enable-shared CC="$(CC:s/guw.exe //)" CXX="$(CXX:s/guw.exe //)" MACHDEP=MINGW32 LN="cp -p" CFLAGS="$(python_CFLAGS)" LDFLAGS="$(python_LDFLAGS)"
-BUILD_ACTION=$(ENV_BUILD) make ; make install
+BUILD_ACTION=$(ENV_BUILD) make && make install
.ELSE
#PYTHONPATH:=..$/Lib
#.EXPORT : PYTHONPATH
diff --git a/saxon/makefile.mk b/saxon/makefile.mk
index e1f887f1263a..e73eced80288 100644
--- a/saxon/makefile.mk
+++ b/saxon/makefile.mk
@@ -45,6 +45,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=source-9.0.0.7-bj
+TARFILE_MD5=ada24d37d8d638b3d8a9985e80bc2978
ADDITIONAL_FILES=build.xml
TARFILE_ROOTDIR=src
diff --git a/stax/makefile.mk b/stax/makefile.mk
index 76f2456d3b96..6dbe81ee7ca5 100644
--- a/stax/makefile.mk
+++ b/stax/makefile.mk
@@ -49,6 +49,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=stax-api-1.0-2-sources
+TARFILE_MD5=8294d6c42e3553229af9934c5c0ed997
TARFILE_ROOTDIR=src
BUILD_ACTION=$(JAVAC) javax$/xml$/stream$/*.java && jar -cf jsr173_1.0_api.jar javax$/xml$/stream$/*.class javax$/xml$/stream$/events$/*.class javax$/xml$/stream$/util$/*.class
diff --git a/zlib/makefile.mk b/zlib/makefile.mk
index e9c9a8c5c83e..389a68eb9c52 100644
--- a/zlib/makefile.mk
+++ b/zlib/makefile.mk
@@ -45,6 +45,7 @@ all:
# --- Files --------------------------------------------------------
TARFILE_NAME=zlib-1.1.4
+TARFILE_MD5=abc405d0bdd3ee22782d7aa20e440f08
PATCH_FILES=zlib-1.1.4.patch
ADDITIONAL_FILES=makefile.mk