Fri Nov 8 12:55:52 2013 UTC ()
Fix PR pkg/48240 and PR pkg/48370

* Add forgotten patch for NetBSD's cpuset(3), fix build
* Use __fstat50 etc instead of fstat on NetBSD. Based on martin@'s patch
  for firefox 27.0.
  Restore session is recovered on NetBSD/amd64.


(ryoon)
diff -r1.104 -r1.105 pkgsrc/www/seamonkey/distinfo
diff -r0 -r1.1 pkgsrc/www/seamonkey/patches/patch-mozilla_config_stl-headers
diff -r0 -r1.1 pkgsrc/www/seamonkey/patches/patch-mozilla_gfx_skia_src_utils_SkThreadUtils__pthread__linux.cpp
diff -r0 -r1.1 pkgsrc/www/seamonkey/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c
diff -r0 -r1.1 pkgsrc/www/seamonkey/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__back.jsm
diff -r0 -r1.1 pkgsrc/www/seamonkey/patches/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm
diff -r0 -r1.3 pkgsrc/www/seamonkey/patches/patch-mozilla_config_system__wrappers_unwind.h

cvs diff -r1.104 -r1.105 pkgsrc/www/seamonkey/distinfo (expand / switch to unified diff)

--- pkgsrc/www/seamonkey/distinfo 2013/11/04 06:01:46 1.104
+++ pkgsrc/www/seamonkey/distinfo 2013/11/08 12:55:51 1.105
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1$NetBSD: distinfo,v 1.104 2013/11/04 06:01:46 ryoon Exp $ 1$NetBSD: distinfo,v 1.105 2013/11/08 12:55:51 ryoon Exp $
2 2
3SHA1 (enigmail-1.6.tar.gz) = 51a7eb7d86ce24d8199f741a0079f0d56ecd6368 3SHA1 (enigmail-1.6.tar.gz) = 51a7eb7d86ce24d8199f741a0079f0d56ecd6368
4RMD160 (enigmail-1.6.tar.gz) = a854bb37a6a7f298f6cc268110dcb21d00909fa4 4RMD160 (enigmail-1.6.tar.gz) = a854bb37a6a7f298f6cc268110dcb21d00909fa4
5Size (enigmail-1.6.tar.gz) = 1231111 bytes 5Size (enigmail-1.6.tar.gz) = 1231111 bytes
6SHA1 (seamonkey-2.22.source.tar.bz2) = ce549707ca567e0970b8bb0096ba54f8a9d2a3be 6SHA1 (seamonkey-2.22.source.tar.bz2) = ce549707ca567e0970b8bb0096ba54f8a9d2a3be
7RMD160 (seamonkey-2.22.source.tar.bz2) = 287e94885f0cf930155223227285e18dc615bb74 7RMD160 (seamonkey-2.22.source.tar.bz2) = 287e94885f0cf930155223227285e18dc615bb74
8Size (seamonkey-2.22.source.tar.bz2) = 148026129 bytes 8Size (seamonkey-2.22.source.tar.bz2) = 148026129 bytes
9SHA1 (patch-aa) = d2582a11a50a94bca98434f5af228a0bb65a633a 9SHA1 (patch-aa) = d2582a11a50a94bca98434f5af228a0bb65a633a
10SHA1 (patch-ak) = a36dd36a037a76a40955316200b1f4603b9ed8e9 10SHA1 (patch-ak) = a36dd36a037a76a40955316200b1f4603b9ed8e9
11SHA1 (patch-al) = 06ddb5f0f55ca02bee0d55ddb5316ddd9099f2d9 11SHA1 (patch-al) = 06ddb5f0f55ca02bee0d55ddb5316ddd9099f2d9
12SHA1 (patch-ao) = f1d598ebb88cd719c8ed34c64f96abca8a19d85e 12SHA1 (patch-ao) = f1d598ebb88cd719c8ed34c64f96abca8a19d85e
13SHA1 (patch-as) = d9be0c3720e4fd5446d81145df781583f0138739 13SHA1 (patch-as) = d9be0c3720e4fd5446d81145df781583f0138739
14SHA1 (patch-bf) = cf7fef695c6db66a3653d3258a2385c6f1eb709e 14SHA1 (patch-bf) = cf7fef695c6db66a3653d3258a2385c6f1eb709e
@@ -30,27 +30,27 @@ SHA1 (patch-mozilla_config_Makefile.in)  @@ -30,27 +30,27 @@ SHA1 (patch-mozilla_config_Makefile.in)
30SHA1 (patch-mozilla_config_baseconfig.mk) = d6f27cdc853e6d026c151bf40cb898428c37455c 30SHA1 (patch-mozilla_config_baseconfig.mk) = d6f27cdc853e6d026c151bf40cb898428c37455c
31SHA1 (patch-mozilla_config_stl-headers) = a0ff5cba5074d84e49d09eb3cc11cf9ef04db852 31SHA1 (patch-mozilla_config_stl-headers) = a0ff5cba5074d84e49d09eb3cc11cf9ef04db852
32SHA1 (patch-mozilla_config_stl__wrappers_ios) = 066a9f3db9203afa8131b2ff91d212033e5950e0 32SHA1 (patch-mozilla_config_stl__wrappers_ios) = 066a9f3db9203afa8131b2ff91d212033e5950e0
33SHA1 (patch-mozilla_config_stl__wrappers_ostream) = 67559c5ab17088680b86dea6b081a48b781f59b5 33SHA1 (patch-mozilla_config_stl__wrappers_ostream) = 67559c5ab17088680b86dea6b081a48b781f59b5
34SHA1 (patch-mozilla_config_system-headers) = bc44741903e57169a2e3c2675a6e4f15c72e42d2 34SHA1 (patch-mozilla_config_system-headers) = bc44741903e57169a2e3c2675a6e4f15c72e42d2
35SHA1 (patch-mozilla_config_system__wrappers_unwind.h) = e9a5a86146cffef99ab306ff3d3059649801c0ab 35SHA1 (patch-mozilla_config_system__wrappers_unwind.h) = e9a5a86146cffef99ab306ff3d3059649801c0ab
36SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp) = 400a5af9988d4392d92e493c73bbe61cd1915edb 36SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.cpp) = 400a5af9988d4392d92e493c73bbe61cd1915edb
37SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.h) = 14038ce0ee2b38db6c7952056a97a65839a2c1a9 37SHA1 (patch-mozilla_dom_plugins_ipc_PluginModuleChild.h) = 14038ce0ee2b38db6c7952056a97a65839a2c1a9
38SHA1 (patch-mozilla_extensions_auth_nsAuthGSSAPI.cpp) = 527f00c7001e9de95b9ccb4b4eaad62107b49fef 38SHA1 (patch-mozilla_extensions_auth_nsAuthGSSAPI.cpp) = 527f00c7001e9de95b9ccb4b4eaad62107b49fef
39SHA1 (patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp) = 5f4c28f07469f402035cc607bf82b851bf60a0a4 39SHA1 (patch-mozilla_extensions_spellcheck_hunspell_src_mozHunspell.cpp) = 5f4c28f07469f402035cc607bf82b851bf60a0a4
40SHA1 (patch-mozilla_gfx_graphite2_src_Bidi.cpp) = fb97becdfeeea742e8c0bc51e10efc124a2a11f3 40SHA1 (patch-mozilla_gfx_graphite2_src_Bidi.cpp) = fb97becdfeeea742e8c0bc51e10efc124a2a11f3
41SHA1 (patch-mozilla_gfx_skia_include_core_SkPreConfig.h) = 5a45df0ec2be71f9406333488632bb7c42cafa68 41SHA1 (patch-mozilla_gfx_skia_include_core_SkPreConfig.h) = 5a45df0ec2be71f9406333488632bb7c42cafa68
42SHA1 (patch-mozilla_gfx_skia_moz.build) = d74b274c0a1cfa02804c154669e200c764a900e5 42SHA1 (patch-mozilla_gfx_skia_moz.build) = d74b274c0a1cfa02804c154669e200c764a900e5
43SHA1 (patch-mozilla_gfx_skia_src_utils_SkThreadUtils__pthread__linux.cpp) = 7345c4535876933c16e2257cf5da0115e43aa39e 43SHA1 (patch-mozilla_gfx_skia_src_utils_SkThreadUtils__pthread__linux.cpp) = a25edef88cb3a7d905acdf0267a75eb666eac6d6
44SHA1 (patch-mozilla_image_decoders_nsJPEGDecoder.cpp) = 316bfe765e20f188c847efa30cfa0ccc9f4fc7e5 44SHA1 (patch-mozilla_image_decoders_nsJPEGDecoder.cpp) = 316bfe765e20f188c847efa30cfa0ccc9f4fc7e5
45SHA1 (patch-mozilla_intl_hyphenation_src_hnjalloc.h) = 8b670bca826d17e373c1c09893e335c1bb3d4546 45SHA1 (patch-mozilla_intl_hyphenation_src_hnjalloc.h) = 8b670bca826d17e373c1c09893e335c1bb3d4546
46SHA1 (patch-mozilla_ipc_chromium_Makefile.in) = 076293610dc66961d8179863b056eb666f10391e 46SHA1 (patch-mozilla_ipc_chromium_Makefile.in) = 076293610dc66961d8179863b056eb666f10391e
47SHA1 (patch-mozilla_ipc_chromium_chromium-config.mk) = 7908071f6465cb17fe5fba517b0d628bb437f9e3 47SHA1 (patch-mozilla_ipc_chromium_chromium-config.mk) = 7908071f6465cb17fe5fba517b0d628bb437f9e3
48SHA1 (patch-mozilla_ipc_chromium_src_base_base__paths.h) = 87e8a5b3e859bba908d985d6952bf1a7ca1f60b2 48SHA1 (patch-mozilla_ipc_chromium_src_base_base__paths.h) = 87e8a5b3e859bba908d985d6952bf1a7ca1f60b2
49SHA1 (patch-mozilla_ipc_chromium_src_base_debug__util__posix.cc) = b7fb6d1e607e1b00fe3cdde1376fb18e783fa801 49SHA1 (patch-mozilla_ipc_chromium_src_base_debug__util__posix.cc) = b7fb6d1e607e1b00fe3cdde1376fb18e783fa801
50SHA1 (patch-mozilla_ipc_chromium_src_base_file__util.h) = d6ba7a0876840306148c29041f352bee850255cc 50SHA1 (patch-mozilla_ipc_chromium_src_base_file__util.h) = d6ba7a0876840306148c29041f352bee850255cc
51SHA1 (patch-mozilla_ipc_chromium_src_base_file__util__posix.cc) = 0d43d6a5de73f88c159dd4caf372be7544aa7c6e 51SHA1 (patch-mozilla_ipc_chromium_src_base_file__util__posix.cc) = 0d43d6a5de73f88c159dd4caf372be7544aa7c6e
52SHA1 (patch-mozilla_ipc_chromium_src_base_file__version__info.h) = 463e8d0c433618fe3750627be88d95d8ac4b7def 52SHA1 (patch-mozilla_ipc_chromium_src_base_file__version__info.h) = 463e8d0c433618fe3750627be88d95d8ac4b7def
53SHA1 (patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc) = 7c18b292b688f4185c9012ba03135ab95e5c473b 53SHA1 (patch-mozilla_ipc_chromium_src_base_message__pump__libevent.cc) = 7c18b292b688f4185c9012ba03135ab95e5c473b
54SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread.h) = 487468d70d9644e6b09c548ab607310ff54add84 54SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread.h) = 487468d70d9644e6b09c548ab607310ff54add84
55SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc) = 250ae7c2f00bf019fc7f574744d5bfc3830553e5 55SHA1 (patch-mozilla_ipc_chromium_src_base_platform__thread__posix.cc) = 250ae7c2f00bf019fc7f574744d5bfc3830553e5
56SHA1 (patch-mozilla_ipc_chromium_src_base_process__util.h) = 1d570ebf920496f8fd5747d26c620c1a30a28942 56SHA1 (patch-mozilla_ipc_chromium_src_base_process__util.h) = 1d570ebf920496f8fd5747d26c620c1a30a28942
@@ -108,26 +108,28 @@ SHA1 (patch-mozilla_mfbt_Atomics.h) = 7d @@ -108,26 +108,28 @@ SHA1 (patch-mozilla_mfbt_Atomics.h) = 7d
108SHA1 (patch-mozilla_mfbt_Poison.cpp) = c01b2ef4bbb061585673d434a88036c67aa1a153 108SHA1 (patch-mozilla_mfbt_Poison.cpp) = c01b2ef4bbb061585673d434a88036c67aa1a153
109SHA1 (patch-mozilla_modules_libjar_nsZipArchive.cpp) = a399e0bd0e83c47938bbee077eaa79fc52386241 109SHA1 (patch-mozilla_modules_libjar_nsZipArchive.cpp) = a399e0bd0e83c47938bbee077eaa79fc52386241
110SHA1 (patch-mozilla_modules_libpref_src_init_all.js) = 3580919b10fd558713b08d5fa93c64c15d8c0764 110SHA1 (patch-mozilla_modules_libpref_src_init_all.js) = 3580919b10fd558713b08d5fa93c64c15d8c0764
111SHA1 (patch-mozilla_netwerk_sctp_src_netinet6_sctp6__usrreq.c) = dd166d48093684ee650a059d83008939cfad23fe 111SHA1 (patch-mozilla_netwerk_sctp_src_netinet6_sctp6__usrreq.c) = dd166d48093684ee650a059d83008939cfad23fe
112SHA1 (patch-mozilla_netwerk_sctp_src_netinet_sctp__os__userspace.h) = 0961bbaa82191669a52ef9464776fbe744dec548 112SHA1 (patch-mozilla_netwerk_sctp_src_netinet_sctp__os__userspace.h) = 0961bbaa82191669a52ef9464776fbe744dec548
113SHA1 (patch-mozilla_netwerk_sctp_src_netinet_sctp__usrreq.c) = 398c6638c71aa499e2b60f8b71f0c4006d832d5c 113SHA1 (patch-mozilla_netwerk_sctp_src_netinet_sctp__usrreq.c) = 398c6638c71aa499e2b60f8b71f0c4006d832d5c
114SHA1 (patch-mozilla_netwerk_sctp_src_user__recv__thread.c) = c143363510a179c3c46e106dd8cd46718a7b1ac3 114SHA1 (patch-mozilla_netwerk_sctp_src_user__recv__thread.c) = c143363510a179c3c46e106dd8cd46718a7b1ac3
115SHA1 (patch-mozilla_netwerk_sctp_src_user__socket.c) = a82b0f6d0d4717bfa593e7f3c53c3a229cfa6942 115SHA1 (patch-mozilla_netwerk_sctp_src_user__socket.c) = a82b0f6d0d4717bfa593e7f3c53c3a229cfa6942
116SHA1 (patch-mozilla_netwerk_sctp_src_user__socketvar.h) = 6d34abb3d8ecc5c8b36bfa594dc11a99facfa13b 116SHA1 (patch-mozilla_netwerk_sctp_src_user__socketvar.h) = 6d34abb3d8ecc5c8b36bfa594dc11a99facfa13b
117SHA1 (patch-mozilla_netwerk_wifi_moz.build) = f2232f82ee267fdbbcf1c4090390a6bea9bf5849 117SHA1 (patch-mozilla_netwerk_wifi_moz.build) = f2232f82ee267fdbbcf1c4090390a6bea9bf5849
118SHA1 (patch-mozilla_netwerk_wifi_nsWifiScannerFreeBSD.cpp) = 780dabd37ea0eab07932489181de4cdfe0a5b4a3 118SHA1 (patch-mozilla_netwerk_wifi_nsWifiScannerFreeBSD.cpp) = 780dabd37ea0eab07932489181de4cdfe0a5b4a3
119SHA1 (patch-mozilla_security_manager_ssl_src_JARSignatureVerification.cpp) = 9f265784d23be668dbb1fcb4e09185670a298293 119SHA1 (patch-mozilla_security_manager_ssl_src_JARSignatureVerification.cpp) = 9f265784d23be668dbb1fcb4e09185670a298293
120SHA1 (patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp) = 56531146315f3eac703a02ed23ef90f7ac4917b9 120SHA1 (patch-mozilla_security_manager_ssl_src_nsNSSComponent.cpp) = 56531146315f3eac703a02ed23ef90f7ac4917b9
 121SHA1 (patch-mozilla_toolkit_components_osfile_modules_osfile__unix__back.jsm) = ffe3a1c0915cab3d0f14b47a57925e79c13bd3d5
 122SHA1 (patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm) = 84c7aeeab671115c99f9b9afa7b0958830167e49
121SHA1 (patch-mozilla_toolkit_library_Makefile.in) = e7915dacee2a0bd3983cafd421ffe55ed54a5874 123SHA1 (patch-mozilla_toolkit_library_Makefile.in) = e7915dacee2a0bd3983cafd421ffe55ed54a5874
122SHA1 (patch-mozilla_toolkit_mozapps_update_updater_updater.cpp) = 2d4769262671a41950d872f46806374efbbccb37 124SHA1 (patch-mozilla_toolkit_mozapps_update_updater_updater.cpp) = 2d4769262671a41950d872f46806374efbbccb37
123SHA1 (patch-mozilla_toolkit_toolkit.mozbuild) = d0510df2e3fb3a7c5dd713b36351e72961788345 125SHA1 (patch-mozilla_toolkit_toolkit.mozbuild) = d0510df2e3fb3a7c5dd713b36351e72961788345
124SHA1 (patch-mozilla_toolkit_xre_Makefile.in) = b8d51e994008f007b4fc1caec24a6eebe200b55b 126SHA1 (patch-mozilla_toolkit_xre_Makefile.in) = b8d51e994008f007b4fc1caec24a6eebe200b55b
125SHA1 (patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp) = 70030e59b2ed09b9bc9827d35e17b12be7f0cd71 127SHA1 (patch-mozilla_toolkit_xre_nsEmbedFunctions.cpp) = 70030e59b2ed09b9bc9827d35e17b12be7f0cd71
126SHA1 (patch-mozilla_xpcom_base_nsStackWalk.cpp) = 6946cbbd8389e35a13ad457b8cbb4da91e0d8925 128SHA1 (patch-mozilla_xpcom_base_nsStackWalk.cpp) = 6946cbbd8389e35a13ad457b8cbb4da91e0d8925
127SHA1 (patch-mozilla_xpcom_ds_TimeStamp.h) = 3f751a097ec60ad743a3fa2d6ba9c3b36d633176 129SHA1 (patch-mozilla_xpcom_ds_TimeStamp.h) = 3f751a097ec60ad743a3fa2d6ba9c3b36d633176
128SHA1 (patch-mozilla_xpcom_ds_moz.build) = 6abb1dc070e51fde11f49859bcc7359e87323dfb 130SHA1 (patch-mozilla_xpcom_ds_moz.build) = 6abb1dc070e51fde11f49859bcc7359e87323dfb
129SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build) = 75baafd5ccb281d54cc38cb1ca6b24d79b655626 131SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_moz.build) = 75baafd5ccb281d54cc38cb1ca6b24d79b655626
130SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 2868370f4112bcb8da5ed879e661856949750fb9 132SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 2868370f4112bcb8da5ed879e661856949750fb9
131SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp) = e6bdc6adc373dab89bd1ab9546db8fffd41cb38c 133SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcinvoke__ppc__netbsd.cpp) = e6bdc6adc373dab89bd1ab9546db8fffd41cb38c
132SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp) = bbdb627a4130b36e1512d7350f92012163067940 134SHA1 (patch-mozilla_xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp) = bbdb627a4130b36e1512d7350f92012163067940
133SHA1 (patch-mozilla_xpcom_string_public_nsAlgorithm.h) = 90d1159982ef11d1ba6bfb01bfb64c0ce3cf8cd3 135SHA1 (patch-mozilla_xpcom_string_public_nsAlgorithm.h) = 90d1159982ef11d1ba6bfb01bfb64c0ce3cf8cd3

File Added: pkgsrc/www/seamonkey/patches/Attic/patch-mozilla_config_stl-headers
$NetBSD: patch-mozilla_config_stl-headers,v 1.1 2013/11/08 12:55:52 ryoon Exp $

--- mozilla/config/stl-headers.orig	2013-10-29 01:20:42.000000000 +0000
+++ mozilla/config/stl-headers
@@ -21,6 +21,7 @@ algorithm
 atomic
 deque
 ios
+iosfwd
 iostream
 iterator
 limits

File Added: pkgsrc/www/seamonkey/patches/Attic/patch-mozilla_gfx_skia_src_utils_SkThreadUtils__pthread__linux.cpp
$NetBSD: patch-mozilla_gfx_skia_src_utils_SkThreadUtils__pthread__linux.cpp,v 1.1 2013/11/08 12:55:52 ryoon Exp $

* Use cpuset(3) for NetBSD. From rmind@.

--- mozilla/gfx/skia/src/utils/SkThreadUtils_pthread_linux.cpp.orig	2013-10-29 01:20:50.000000000 +0000
+++ mozilla/gfx/skia/src/utils/SkThreadUtils_pthread_linux.cpp
@@ -12,26 +12,47 @@
 #include "SkThreadUtils.h"
 #include "SkThreadUtils_pthread.h"
 
+#include <unistd.h>
 #include <pthread.h>
 #ifdef __FreeBSD__
 #include <pthread_np.h>
 #endif
+#ifdef __NetBSD__
+#include <sched.h>
+#endif
 
 #if defined(__FreeBSD__) || defined(__NetBSD__)
 #define cpu_set_t cpuset_t
 #endif
 
-#ifndef CPU_COUNT
+#if !defined(CPU_COUNT) && !defined(__NetBSD__)
 static int CPU_COUNT(cpu_set_t *set) {
     int count = 0;
     for (int i = 0; i < CPU_SETSIZE; i++) {
         if (CPU_ISSET(i, set)) {
             count++;
-	}
+        }
+    }
+    return count;
+}
+#endif
+
+#if defined(__NetBSD__)
+
+#define CPU_ISSET(c, s) cpuset_isset(c, s)
+
+static int CPU_COUNT(cpuset_t *set) {
+    static const int ncpu = sysconf(_SC_NPROCESSORS_CONF);
+    int count = 0;
+
+    for (int i = 0; i < ncpu; i++) {
+        if (cpuset_isset(i, set)) {
+            count++;
+        }
     }
     return count;
 }
-#endif /* !CPU_COUNT */
+#endif
 
 static int nth_set_cpu(unsigned int n, cpu_set_t* cpuSet) {
     n %= CPU_COUNT(cpuSet);
@@ -51,6 +72,7 @@ bool SkThread::setProcessorAffinity(unsi
         return false;
     }
 
+#if !defined(__NetBSD__)
     cpu_set_t parentCpuset;
     if (0 != pthread_getaffinity_np(pthread_self(), sizeof(cpu_set_t), &parentCpuset)) {
         return false;
@@ -62,4 +84,23 @@ bool SkThread::setProcessorAffinity(unsi
     return 0 == pthread_setaffinity_np(pthreadData->fPThread,
                                        sizeof(cpu_set_t),
                                        &cpuset);
+#else
+    cpuset_t *cpuset = cpuset_create();
+    if (!cpuset) {
+        return false;
+    }
+    size_t csize = cpuset_size(cpuset);
+    if (0 != pthread_getaffinity_np(pthread_self(), csize, cpuset)) {
+        cpuset_destroy(cpuset);
+        return false;
+    }
+
+    int nthcpu = nth_set_cpu(processor, cpuset);
+    cpuset_zero(cpuset);
+    cpuset_set(nthcpu, cpuset);
+
+    bool ok = 0 == pthread_setaffinity_np(pthreadData->fPThread, csize, cpuset);
+    cpuset_destroy(cpuset);
+    return ok;
+#endif
 }

File Added: pkgsrc/www/seamonkey/patches/patch-mozilla_media_libcubeb_src_cubeb__alsa.c
$NetBSD: patch-mozilla_media_libcubeb_src_cubeb__alsa.c,v 1.1 2013/11/08 12:55:52 ryoon Exp $

--- mozilla/media/libcubeb/src/cubeb_alsa.c.orig	2013-10-29 01:21:03.000000000 +0000
+++ mozilla/media/libcubeb/src/cubeb_alsa.c
@@ -6,6 +6,9 @@
  */
 #undef NDEBUG
 #define _BSD_SOURCE
+#if defined(__NetBSD__)
+#define _NETBSD_SOURCE
+#endif
 #define _XOPEN_SOURCE 500
 #include <pthread.h>
 #include <sys/time.h>

File Added: pkgsrc/www/seamonkey/patches/Attic/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__back.jsm
$NetBSD: patch-mozilla_toolkit_components_osfile_modules_osfile__unix__back.jsm,v 1.1 2013/11/08 12:55:52 ryoon Exp $

--- mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm.orig	2013-10-29 01:21:11.000000000 +0000
+++ mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm
@@ -170,7 +170,7 @@
          }
 
          stat.add_field_at(OS.Constants.libc.OSFILE_OFFSETOF_STAT_ST_SIZE,
-                        "st_size", Types.size_t.implementation);
+                        "st_size", Types.off_t.implementation);
          Types.stat = stat.getType();
        }
 
@@ -397,10 +397,17 @@
                     /*oflags*/Types.int,
                     /*mode*/  Types.int);
 
+       if (OS.Constants.Sys.Name == "NetBSD") {
+       UnixFile.opendir =
+         declareFFI("__opendir30", ctypes.default_abi,
+                    /*return*/ Types.null_or_DIR_ptr,
+                    /*path*/   Types.path);
+       } else {
        UnixFile.opendir =
          declareFFI("opendir", ctypes.default_abi,
                     /*return*/ Types.null_or_DIR_ptr,
                     /*path*/   Types.path);
+      }
 
        UnixFile.pread =
          declareFFI("pread", ctypes.default_abi,
@@ -434,6 +441,11 @@
            declareFFI("readdir$INODE64", ctypes.default_abi,
                      /*return*/Types.null_or_dirent_ptr,
                       /*dir*/   Types.DIR.in_ptr); // For MacOS X
+       } else if (OS.Constants.Sys.Name == "NetBSD") {
+         UnixFile.readdir =
+           declareFFI("__readdir30", ctypes.default_abi,
+                      /*return*/Types.null_or_dirent_ptr,
+                      /*dir*/   Types.DIR.in_ptr);
        } else {
          UnixFile.readdir =
            declareFFI("readdir", ctypes.default_abi,
@@ -553,6 +565,26 @@
          UnixFile.fstat = function stat(fd, buf) {
            return fxstat(ver, fd, buf);
          };
+       } else if (OS.Constants.Sys.Name == "NetBSD") {
+         // NetBSD 5.0 and newer
+         UnixFile.stat =
+           declareFFI("__stat50", ctypes.default_abi,
+                      /*return*/ Types.negativeone_or_nothing,
+                      /*path*/   Types.path,
+                      /*buf*/    Types.stat.out_ptr
+                     );
+         UnixFile.lstat =
+           declareFFI("__lstat50", ctypes.default_abi,
+                      /*return*/ Types.negativeone_or_nothing,
+                      /*path*/   Types.path,
+                      /*buf*/    Types.stat.out_ptr
+                     );
+         UnixFile.fstat =
+           declareFFI("__fstat50", ctypes.default_abi,
+                      /*return*/ Types.negativeone_or_nothing,
+                      /*fd*/     Types.fd,
+                      /*buf*/    Types.stat.out_ptr
+                     );
        } else {
          // Mac OS X 32-bits, other Unix
          UnixFile.stat =

File Added: pkgsrc/www/seamonkey/patches/Attic/patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm
$NetBSD: patch-mozilla_toolkit_components_osfile_modules_osfile__unix__front.jsm,v 1.1 2013/11/08 12:55:52 ryoon Exp $

--- mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm.orig	2013-10-29 01:21:11.000000000 +0000
+++ mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm
@@ -734,7 +734,7 @@
      File.Info = function Info(stat) {
        let isDir = (stat.st_mode & OS.Constants.libc.S_IFMT) == OS.Constants.libc.S_IFDIR;
        let isSymLink = (stat.st_mode & OS.Constants.libc.S_IFMT) == OS.Constants.libc.S_IFLNK;
-       let size = exports.OS.Shared.Type.size_t.importFromC(stat.st_size);
+       let size = exports.OS.Shared.Type.off_t.importFromC(stat.st_size);
 
        let lastAccessDate = new Date(stat.st_atime * 1000);
        let lastModificationDate = new Date(stat.st_mtime * 1000);

File Added: pkgsrc/www/seamonkey/patches/Attic/patch-mozilla_config_system__wrappers_unwind.h
$NetBSD: patch-mozilla_config_system__wrappers_unwind.h,v 1.3 2013/11/08 12:55:52 ryoon Exp $

--- mozilla/config/system_wrappers/unwind.h.orig	2013-11-04 05:52:46.000000000 +0000
+++ mozilla/config/system_wrappers/unwind.h
@@ -0,0 +1,4 @@
+#pragma GCC system_header
+#pragma GCC visibility push(default)
+#include_next <unwind.h>
+#pragma GCC visibility pop