Howdy folks,
Here are some notes on what I did to build the mozilla debs. It still needs debugging but it does build.
Must have pthreads patched for __inline.
There is also and issue with clockid_t in time.h. I got around this by adding _GNU_SOURCE, but this is probably not the ideal solution.
Patched mozilla with nyu's consolidated patch.
Most of the rest of the issues were PATHMAX and MAXPATHLEN issues.
I am including the files I patched in this e-mail.
Let me know if I should fix/change anything.
Thank you,
-- Barry deFreese Debian 3.0r1 "Woody" GNU/Hurd Registered Linux "Newbie" #302256 - Hurd H4XX0r wannabe
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning." Rich Cook.
--- build-tree/mozilla/directory/c-sdk/ldap/libraries/libprldap/ldappr-error.corg 2005-01-18 18:07:24.000000000 -0500
+++ build-tree/mozilla/directory/c-sdk/ldap/libraries/libprldap/ldappr-error.c 2005-01-18 18:08:09.000000000 -0500
@@ -218,7 +218,8 @@ struct prldap_errormap_entry {
#if defined(__hpux) || defined(_AIX) || defined(OSF1) || defined(DARWIN) || \
defined(BEOS) || defined(FREEBSD) || defined(BSDI) || defined(VMS) || \
- defined(OPENBSD) || defined(NETBSD) || defined(__FreeBSD_kernel__)
+ defined(OPENBSD) || defined(NETBSD) || defined(__FreeBSD_kernel__) || \
+ defined(__GNU__)
#define EDEADLOCK -1
#endif
--- build-tree/mozilla/dbm/src/ndbm.corg 2005-01-18 18:29:13.000000000 -0500 +++ build-tree/mozilla/dbm/src/ndbm.c 2005-01-20 12:34:01.000000000 -0500 @@ -58,6 +58,10 @@ static char sccsid[] = "@(#)ndbm.c 8.4 ( #include "ndbm.h" #include "hash.h" +#ifndef MAXPATHLEN +#define MAXPATHLEN 4096 +#endif + /* * Returns: * *DBM on success
--- build-tree/mozilla/gfx/src/gtk/nsDeviceContextSpecG.horg 2005-01-19 05:23:55.000000000 -0500 +++ build-tree/mozilla/gfx/src/gtk/nsDeviceContextSpecG.h 2005-01-20 12:52:00.000000000 -0500 @@ -37,6 +37,11 @@ * * ***** END LICENSE BLOCK ***** */ +/* Temp hack for GNU/Hurd */ +#ifndef PATH_MAX +#define PATH_MAX 4096 +#endif + #ifndef nsDeviceContextSpecGTK_h___ #define nsDeviceContextSpecGTK_h___
--- build-tree/mozilla/xpcom/io/nsDirectoryService.cpporg 2005-01-18 19:24:27.000000000 -0500 +++ build-tree/mozilla/xpcom/io/nsDirectoryService.cpp 2005-01-20 12:50:18.000000000 -0500 @@ -82,6 +82,14 @@ #include "prenv.h" #endif +#ifndef MAX_PATH +#define MAX_PATH 4096 +#endif + +#ifndef MAXPATHLEN +#define MAXPATHLEN 4096 +#endif + #include "SpecialSystemDirectory.h" #include "nsAppFileLocationProvider.h"
--- build-tree/mozilla/xpcom/io/nsLocalFileUnix.cpporg 2005-01-18 20:04:10.000000000 -0500
+++ build-tree/mozilla/xpcom/io/nsLocalFileUnix.cpp 2005-01-20 12:50:42.000000000 -0500
@@ -77,6 +77,10 @@
#define FILE_STRNCMP strncmp
#endif
+#ifndef PATH_MAX
+#define PATH_MAX 4096
+#endif
+
#define VALIDATE_STAT_CACHE() \
PR_BEGIN_MACRO \
if (!mHaveCachedStat) { \
--- build-tree/mozilla/xpcom/obsolete/nsSpecialSystemDirectory.cpporg 2005-01-18 20:21:48.000000000 -0500 +++ build-tree/mozilla/xpcom/obsolete/nsSpecialSystemDirectory.cpp 2005-01-20 12:51:21.000000000 -0500 @@ -68,6 +68,15 @@ #include <unixlib.h> #endif +/* Temp fix for GNU/Hurd for PATH_MAX and MAXPATHLEN */ +#ifndef MAX_PATH +#define MAX_PATH 4096 +#endif + +#ifndef MAXPATHLEN +#define MAXPATHLEN 4096 +#endif + #include "plstr.h" #include "nsHashtable.h"
--- build-tree/mozilla/modules/libjar/nsZipArchive.cpporg 2005-01-18 20:49:23.000000000 -0500 +++ build-tree/mozilla/modules/libjar/nsZipArchive.cpp 2005-01-20 12:49:00.000000000 -0500 @@ -110,6 +110,10 @@ char * strdup(const char *src) # endif #endif /* XP_UNIX */ +#ifndef PATH_MAX +#define PATH_MAX 4096 +#endif + #include "zipfile.h" #include "zipstruct.h" #include "nsZipArchive.h"
--- build-tree/mozilla/nsprpub/pr/src/md/unix/uxrng.corg 2005-01-18 17:36:07.000000000 -0500
+++ build-tree/mozilla/nsprpub/pr/src/md/unix/uxrng.c 2005-01-18 17:36:36.000000000 -0500
@@ -135,7 +135,8 @@ GetHighResClock(void *buf, size_t maxbyt
return 0;
}
-#elif (defined(LINUX) || defined(KFREEBSD) || defined(KNETBSD) || defined(OPENBSD))
+#elif (defined(LINUX) || defined(KFREEBSD) || defined(KNETBSD) || \
+ defined(OPENBSD) || defined(__GNU__))
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

