From e4fc568ec5f38ccaa75b0c148ef0395cc62db04d Mon Sep 17 00:00:00 2001 From: Shokara Kou Date: Mon, 6 Jun 2022 19:47:59 -0400 Subject: re-add ibara's removed palemoon port --- www/palemoon/Makefile | 92 ++++++++++++++++++++++ www/palemoon/distinfo | 2 + www/palemoon/files/mozconfig | 34 ++++++++ www/palemoon/files/palemoon | 3 + www/palemoon/patches/patch-client_mk | 16 ++++ .../patch-config_gcc-stl-wrapper_template_h | 74 +++++++++++++++++ www/palemoon/patches/patch-config_gcc_hidden_h | 17 ++++ .../patches/patch-config_make-stl-wrappers_py | 25 ++++++ .../patches/patch-gfx_skia_generate_mozbuild_py | 47 +++++++++++ ...atch-gfx_skia_trunk_src_opts_opts_check_x86_cpp | 85 ++++++++++++++++++++ .../patches/patch-memory_mozalloc_mozalloc_h | 27 +++++++ .../patches/patch-xpcom_io_nsLocalFileUnix_cpp | 16 ++++ www/palemoon/pkg/DESCR | 9 +++ www/palemoon/pkg/PLIST | 54 +++++++++++++ 14 files changed, 501 insertions(+) create mode 100644 www/palemoon/Makefile create mode 100644 www/palemoon/distinfo create mode 100644 www/palemoon/files/mozconfig create mode 100644 www/palemoon/files/palemoon create mode 100644 www/palemoon/patches/patch-client_mk create mode 100644 www/palemoon/patches/patch-config_gcc-stl-wrapper_template_h create mode 100644 www/palemoon/patches/patch-config_gcc_hidden_h create mode 100644 www/palemoon/patches/patch-config_make-stl-wrappers_py create mode 100644 www/palemoon/patches/patch-gfx_skia_generate_mozbuild_py create mode 100644 www/palemoon/patches/patch-gfx_skia_trunk_src_opts_opts_check_x86_cpp create mode 100644 www/palemoon/patches/patch-memory_mozalloc_mozalloc_h create mode 100644 www/palemoon/patches/patch-xpcom_io_nsLocalFileUnix_cpp create mode 100644 www/palemoon/pkg/DESCR create mode 100644 www/palemoon/pkg/PLIST diff --git a/www/palemoon/Makefile b/www/palemoon/Makefile new file mode 100644 index 0000000..56a5d62 --- /dev/null +++ b/www/palemoon/Makefile @@ -0,0 +1,92 @@ +# $OpenBSD$ + +# Maybe i386 too, but has a hard requirement on SSE2 instructions. +ONLY_FOR_ARCHS = amd64 + +V = 27.7.2 +COMMENT = independent fork of Firefox with new layout engine +DISTNAME = palemoon-${V} +CATEGORIES = www x11 + +GH_ACCOUNT = MoonchildProductions +GH_PROJECT = Pale-Moon +GH_TAGNAME = ${V}_Release + +SHARED_LIBS += browsercomps 1.0 # 1.0 +SHARED_LIBS += dbusservice 1.0 # 1.0 +SHARED_LIBS += mozgnome 1.0 # 1.0 +SHARED_LIBS += mozalloc 1.0 # 1.0 +SHARED_LIBS += mozjs 1.0 # 1.0 +SHARED_LIBS += mozsqlite3 1.0 # 1.0 +SHARED_LIBS += xul 1.0 # 1.0 + +HOMEPAGE = https://www.palemoon.org/ +MAINTAINER = Brian Callahan + +# MPL 2.0 +PERMIT_PACKAGE_CDROM = Yes + +WANTLIB += ${COMPILER_LIBCXX} X11 Xcomposite Xcursor Xdamage Xext +WANTLIB += Xfixes Xi Xinerama Xrandr Xrender Xt atk-1.0 c cairo +WANTLIB += dbus-1 dbus-glib-1 event fontconfig freetype gdk-x11-2.0 +WANTLIB += gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0 gthread-2.0 +WANTLIB += gtk-x11-2.0 icudata icui18n icuuc intl jpeg m nspr4 +WANTLIB += nss3 nssutil3 pango-1.0 pangocairo-1.0 pangoft2-1.0 +WANTLIB += plc4 plds4 smime3 sndio ssl3 vpx z + +MODULES = lang/python +MODPY_RUNDEP = No + +# XXX: ${MODGNU_AUTOCONF_DEPENDS} && AUTOCONF_VERSION=2.13 didn't work +BUILD_DEPENDS = archivers/unzip \ + archivers/zip \ + devel/autoconf/2.13 \ + devel/yasm + +LIB_DEPENDS = devel/nspr \ + multimedia/libvpx \ + textproc/icu4c \ + security/nss \ + x11/dbus-glib \ + x11/gtk+2 + +CONFIGURE_ARGS = --verbose + +USE_GMAKE = Yes + +SEPARATE_BUILD = Yes + +USE_WXNEEDED = Yes + +SUBST_VARS += V + +NO_TEST = Yes + +# Upstream build instructions say this is necessary. +post-extract: + ${SUBST_CMD} -DWRKBUILD="${WRKBUILD}" -DCFLAGS="${CFLAGS}" \ + -c -m 644 ${FILESDIR}/mozconfig ${WRKSRC}/.mozconfig + +# Build system can't find the compilers without this. +pre-configure: + sed -i -e 's,$${CC},${WRKDIR}/bin/cc,g' \ + -e 's,$${CXX},${WRKDIR}/bin/c++,g' \ + ${WRKSRC}/client.mk + +do-build: + cd ${WRKSRC} && ./mach build + +do-install: + cd ${WRKSRC} && ./mach package + ${INSTALL_DATA_DIR} ${PREFIX}/lib/palemoon-${V} + cd ${WRKBUILD}/dist/palemoon && \ + find * -type d -exec ${INSTALL_DATA_DIR} \ + "${PREFIX}/lib/palemoon-${V}/{}" \; + cd ${WRKBUILD}/dist/palemoon && \ + find * -type f -exec ${INSTALL_DATA} \ + "{}" "${PREFIX}/lib/palemoon-${V}/{}" \; + ${INSTALL_PROGRAM} ${WRKBUILD}/dist/palemoon/palemoon{,-bin} \ + ${PREFIX}/lib/palemoon-${V} + ${SUBST_CMD} -c -m 755 ${FILESDIR}/palemoon ${PREFIX}/bin/palemoon + +.include diff --git a/www/palemoon/distinfo b/www/palemoon/distinfo new file mode 100644 index 0000000..45b2aef --- /dev/null +++ b/www/palemoon/distinfo @@ -0,0 +1,2 @@ +SHA256 (palemoon-27.7.2.tar.gz) = DeHR0xhdFHDuNHdKnwWLftkwdXszeIihMjzriLMYYMw= +SIZE (palemoon-27.7.2.tar.gz) = 179831808 diff --git a/www/palemoon/files/mozconfig b/www/palemoon/files/mozconfig new file mode 100644 index 0000000..48561de --- /dev/null +++ b/www/palemoon/files/mozconfig @@ -0,0 +1,34 @@ +ac_add_options --enable-official-branding +export MOZILLA_OFFICIAL=1 + +mk_add_options MOZ_CO_PROJECT=browser +ac_add_options --enable-application=browser + +mk_add_options MOZ_OBJDIR="${WRKBUILD}" + +ac_add_options --enable-optimize="${CFLAGS} -msse2 -mfpmath=sse -I${LOCALBASE}/include" +ac_add_options --with-pthreads + +ac_add_options --disable-installer +ac_add_options --disable-updater + +ac_add_options --enable-release +ac_add_options --enable-devtools +ac_add_options --enable-shared-js + +ac_add_options --enable-strip + +ac_add_options --x-libraries="${X11BASE}/lib" + +ac_add_options --with-system-jpeg="${LOCALBASE}" +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2="${LOCALBASE}" +ac_add_options --with-system-libevent +ac_add_options --with-system-icu +ac_add_options --with-system-webp="${LOCALBASE}" +ac_add_options --with-system-sqlite="${LOCALBASE}" +ac_add_options --with-system-ffi="${LOCALBASE}" +ac_add_options --with-system-pixman +ac_add_options --with-system-libvpx +ac_add_options --with-system-nss +ac_add_options --with-system-nspr diff --git a/www/palemoon/files/palemoon b/www/palemoon/files/palemoon new file mode 100644 index 0000000..e627024 --- /dev/null +++ b/www/palemoon/files/palemoon @@ -0,0 +1,3 @@ +#!/bin/sh + +cd ${TRUEPREFIX}/lib/palemoon-${V} && ./palemoon diff --git a/www/palemoon/patches/patch-client_mk b/www/palemoon/patches/patch-client_mk new file mode 100644 index 0000000..132fd24 --- /dev/null +++ b/www/palemoon/patches/patch-client_mk @@ -0,0 +1,16 @@ +$OpenBSD$ + +Need to be explicit with compilers. + +Index: client.mk +--- client.mk.orig ++++ client.mk +@@ -320,6 +320,8 @@ CONFIG_STATUS_DEPS := \ + + CONFIGURE_ENV_ARGS += \ + MAKE='$(MAKE)' \ ++ CC='${CC}' \ ++ CXX='${CXX}' \ + $(NULL) + + # configure uses the program name to determine @srcdir@. Calling it without diff --git a/www/palemoon/patches/patch-config_gcc-stl-wrapper_template_h b/www/palemoon/patches/patch-config_gcc-stl-wrapper_template_h new file mode 100644 index 0000000..b77e46f --- /dev/null +++ b/www/palemoon/patches/patch-config_gcc-stl-wrapper_template_h @@ -0,0 +1,74 @@ +$OpenBSD$ + +https://hg.mozilla.org/mozilla-central/rev/68da139d0866 + +Index: config/gcc-stl-wrapper.template.h +--- config/gcc-stl-wrapper.template.h.orig ++++ config/gcc-stl-wrapper.template.h +@@ -22,32 +22,6 @@ + #define NOMINMAX 1 + #endif + +-// Don't include mozalloc for cstdlib. See bug 1245076. +-#ifndef moz_dont_include_mozalloc_for_cstdlib +-# define moz_dont_include_mozalloc_for_cstdlib +-#endif +-#ifndef moz_dont_include_mozalloc_for_${HEADER} +-// mozalloc.h wants ; break the cycle by always explicitly +-// including here. NB: this is a tad sneaky. Sez the gcc docs: +-// +-// `#include_next' does not distinguish between and "file" +-// inclusion, nor does it check that the file you specify has the +-// same name as the current file. It simply looks for the file +-// named, starting with the directory in the search path after the +-// one where the current file was found. +-# include_next +- +-// See if we're in code that can use mozalloc. NB: this duplicates +-// code in nscore.h because nscore.h pulls in prtypes.h, and chromium +-// can't build with that being included before base/basictypes.h. +-# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC) +-# include "mozilla/mozalloc.h" +-# else +-# error "STL code can only be used with infallible ::operator new()" +-# endif +- +-#endif +- + #if defined(DEBUG) && !defined(_GLIBCXX_DEBUG) + // Enable checked iterators and other goodies + // +@@ -58,9 +32,33 @@ + // # define _GLIBCXX_DEBUG 1 + #endif + ++// Don't include mozalloc for cstdlib. See bug 1245076. ++#ifndef moz_dont_include_mozalloc_for_cstdlib ++# define moz_dont_include_mozalloc_for_cstdlib ++#endif ++ ++// Include mozalloc after the STL header and all other headers it includes ++// have been preprocessed. ++#if !defined(MOZ_INCLUDE_MOZALLOC_H) && \ ++ !defined(moz_dont_include_mozalloc_for_${HEADER}) ++# define MOZ_INCLUDE_MOZALLOC_H ++# define MOZ_INCLUDE_H_FROM_${HEADER} ++#endif ++ + #pragma GCC visibility push(default) + #include_next <${HEADER}> + #pragma GCC visibility pop ++ ++#ifdef MOZ_INCLUDE_MOZALLOC_H_FROM_${HEADER} ++// See if we're in clode that can use mozalloc. NB: this duplicates ++// code in nscore.h because nscore.h pulls in prtypes.h, and chromium ++// can't built with that being included before base/basictypes.h. ++# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC) ++# include "mozilla/mozalloc.h" ++# else ++# error "STL code can only be used with infallible ::operator new()" ++# endif ++#endif + + // gcc calls a __throw_*() function from bits/functexcept.h when it + // wants to "throw an exception". functexcept exists nominally to diff --git a/www/palemoon/patches/patch-config_gcc_hidden_h b/www/palemoon/patches/patch-config_gcc_hidden_h new file mode 100644 index 0000000..3aebe31 --- /dev/null +++ b/www/palemoon/patches/patch-config_gcc_hidden_h @@ -0,0 +1,17 @@ +$OpenBSD$ + +Maybe one day we'll run with a clang built binary. +We'll need this when we do. + +Index: config/gcc_hidden.h +--- config/gcc_hidden.h.orig ++++ config/gcc_hidden.h +@@ -2,5 +2,7 @@ + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +-/* Begin all files as hidden visibility */ ++/* Begin all files as hidden visibility, but only if using gcc */ ++#ifndef __llvm__ + #pragma GCC visibility push(hidden) ++#endif diff --git a/www/palemoon/patches/patch-config_make-stl-wrappers_py b/www/palemoon/patches/patch-config_make-stl-wrappers_py new file mode 100644 index 0000000..095406d --- /dev/null +++ b/www/palemoon/patches/patch-config_make-stl-wrappers_py @@ -0,0 +1,25 @@ +$OpenBSD$ + +https://hg.mozilla.org/mozilla-central/rev/68da139d0866 + +Index: config/make-stl-wrappers.py +--- config/make-stl-wrappers.py.orig ++++ config/make-stl-wrappers.py +@@ -30,7 +30,6 @@ def main(outdir, compiler, template_file, header_list_ + os.mkdir(outdir) + + template = open(template_file, 'r').read() +- path_to_new = header_path('new', compiler) + + for header in open(header_list_file, 'r'): + header = header.rstrip() +@@ -40,8 +39,7 @@ def main(outdir, compiler, template_file, header_list_ + path = header_path(header, compiler) + with FileAvoidWrite(os.path.join(outdir, header)) as f: + f.write(string.Template(template).substitute(HEADER=header, +- HEADER_PATH=path, +- NEW_HEADER_PATH=path_to_new)) ++ HEADER_PATH=path)) + + + if __name__ == '__main__': diff --git a/www/palemoon/patches/patch-gfx_skia_generate_mozbuild_py b/www/palemoon/patches/patch-gfx_skia_generate_mozbuild_py new file mode 100644 index 0000000..5bed891 --- /dev/null +++ b/www/palemoon/patches/patch-gfx_skia_generate_mozbuild_py @@ -0,0 +1,47 @@ +$OpenBSD$ + +Don't attempt SSSE3 or SSE4. + +Index: gfx/skia/generate_mozbuild.py +--- gfx/skia/generate_mozbuild.py.orig ++++ gfx/skia/generate_mozbuild.py +@@ -37,7 +37,7 @@ if not CONFIG['INTEL_ARCHITECTURE'] and CONFIG['CPU_AR + 'trunk/src/opts/memset32_neon.S', + ] + +-if CONFIG['INTEL_ARCHITECTURE'] and CONFIG['GNU_CC'] and CONFIG['OS_ARCH'] != 'WINNT': ++if CONFIG['INTEL_ARCHITECTURE'] and CONFIG['GNU_CC'] and CONFIG['OS_ARCH'] == 'WINNT': + if CONFIG['CPU_ARCH'] == 'x86_64': + SOURCES += [ + 'trunk/src/opts/SkBlitRow_opts_SSE4_x64_asm.S', +@@ -79,9 +79,6 @@ LOCAL_INCLUDES += [ + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android', 'gtk2', 'gtk3', 'qt', 'gonk', 'cocoa'): + DEFINES['SK_USE_POSIX_THREADS'] = 1 + +-if CONFIG['INTEL_ARCHITECTURE'] and CONFIG['HAVE_TOOLCHAIN_SUPPORT_MSSSE3']: +- DEFINES['SK_BUILD_SSSE3'] = 1 +- + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('android', 'gonk'): + DEFINES['SK_FONTHOST_CAIRO_STANDALONE'] = 0 + +@@ -115,20 +112,15 @@ if CONFIG['_MSC_VER']: + if CONFIG['INTEL_ARCHITECTURE'] and CONFIG['GNU_CC']: + SOURCES['trunk/src/opts/SkBitmapFilter_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + SOURCES['trunk/src/opts/SkBitmapProcState_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] +- SOURCES['trunk/src/opts/SkBitmapProcState_opts_SSSE3.cpp'].flags += ['-mssse3'] + SOURCES['trunk/src/opts/SkBlitRect_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + SOURCES['trunk/src/opts/SkBlitRow_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + SOURCES['trunk/src/opts/SkBlurImage_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] +- SOURCES['trunk/src/opts/SkBlurImage_opts_SSE4.cpp'].flags += ['-msse4.1'] + SOURCES['trunk/src/opts/SkMorphology_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + SOURCES['trunk/src/opts/SkUtils_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + SOURCES['trunk/src/opts/SkXfermode_opts_SSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] + elif CONFIG['CPU_ARCH'] == 'arm' and CONFIG['GNU_CC'] and CONFIG['BUILD_ARM_NEON']: + DEFINES['__ARM_HAVE_OPTIONAL_NEON_SUPPORT'] = 1 + DEFINES['USE_ANDROID_NDK_CPU_FEATURES'] = 0 +-elif CONFIG['CLANG_CL']: +- SOURCES['trunk/src/opts/SkBitmapProcState_opts_SSSE3.cpp'].flags += ['-mssse3'] +- SOURCES['trunk/src/opts/SkBlurImage_opts_SSE4.cpp'].flags += ['-msse4.1'] + + if CONFIG['GNU_CXX'] and CONFIG['CPU_ARCH'] == 'arm': + SOURCES['skia/src/opts/SkBlitRow_opts_arm.cpp'].flags += ['-fomit-frame-pointer'] diff --git a/www/palemoon/patches/patch-gfx_skia_trunk_src_opts_opts_check_x86_cpp b/www/palemoon/patches/patch-gfx_skia_trunk_src_opts_opts_check_x86_cpp new file mode 100644 index 0000000..79bd7d4 --- /dev/null +++ b/www/palemoon/patches/patch-gfx_skia_trunk_src_opts_opts_check_x86_cpp @@ -0,0 +1,85 @@ +$OpenBSD$ + +Index: gfx/skia/trunk/src/opts/opts_check_x86.cpp +--- gfx/skia/trunk/src/opts/opts_check_x86.cpp.orig ++++ gfx/skia/trunk/src/opts/opts_check_x86.cpp +@@ -7,15 +7,12 @@ + + #include "SkBitmapFilter_opts_SSE2.h" + #include "SkBitmapProcState_opts_SSE2.h" +-#include "SkBitmapProcState_opts_SSSE3.h" + #include "SkBitmapScaler.h" + #include "SkBlitMask.h" + #include "SkBlitRect_opts_SSE2.h" + #include "SkBlitRow.h" + #include "SkBlitRow_opts_SSE2.h" +-#include "SkBlitRow_opts_SSE4.h" + #include "SkBlurImage_opts_SSE2.h" +-#include "SkBlurImage_opts_SSE4.h" + #include "SkMorphology_opts.h" + #include "SkMorphology_opts_SSE2.h" + #include "SkRTConf.h" +@@ -145,25 +142,13 @@ void SkBitmapProcState::platformProcs() { + + /* Check fSampleProc32 */ + if (fSampleProc32 == S32_opaque_D32_filter_DX) { +- if (supports_simd(SK_CPU_SSE_LEVEL_SSSE3)) { +- fSampleProc32 = S32_opaque_D32_filter_DX_SSSE3; +- } else { +- fSampleProc32 = S32_opaque_D32_filter_DX_SSE2; +- } ++ fSampleProc32 = S32_opaque_D32_filter_DX_SSE2; + } else if (fSampleProc32 == S32_opaque_D32_filter_DXDY) { +- if (supports_simd(SK_CPU_SSE_LEVEL_SSSE3)) { +- fSampleProc32 = S32_opaque_D32_filter_DXDY_SSSE3; +- } ++ ; + } else if (fSampleProc32 == S32_alpha_D32_filter_DX) { +- if (supports_simd(SK_CPU_SSE_LEVEL_SSSE3)) { +- fSampleProc32 = S32_alpha_D32_filter_DX_SSSE3; +- } else { +- fSampleProc32 = S32_alpha_D32_filter_DX_SSE2; +- } ++ fSampleProc32 = S32_alpha_D32_filter_DX_SSE2; + } else if (fSampleProc32 == S32_alpha_D32_filter_DXDY) { +- if (supports_simd(SK_CPU_SSE_LEVEL_SSSE3)) { +- fSampleProc32 = S32_alpha_D32_filter_DXDY_SSSE3; +- } ++ ; + } + + /* Check fSampleProc16 */ +@@ -218,21 +203,7 @@ static SkBlitRow::Proc32 platform_32_procs_SSE2[] = { + S32A_Blend_BlitRow32_SSE2, // S32A_Blend, + }; + +-#if defined(SK_ATT_ASM_SUPPORTED) +-static SkBlitRow::Proc32 platform_32_procs_SSE4[] = { +- NULL, // S32_Opaque, +- S32_Blend_BlitRow32_SSE2, // S32_Blend, +- S32A_Opaque_BlitRow32_SSE4_asm, // S32A_Opaque +- S32A_Blend_BlitRow32_SSE2, // S32A_Blend, +-}; +-#endif +- + SkBlitRow::Proc32 SkBlitRow::PlatformProcs32(unsigned flags) { +-#if defined(SK_ATT_ASM_SUPPORTED) +- if (supports_simd(SK_CPU_SSE_LEVEL_SSE41)) { +- return platform_32_procs_SSE4[flags]; +- } else +-#endif + if (supports_simd(SK_CPU_SSE_LEVEL_SSE2)) { + return platform_32_procs_SSE2[flags]; + } else { +@@ -359,10 +330,7 @@ bool SkBoxBlurGetPlatformProcs(SkBoxBlurProc* boxBlurX + #ifdef SK_DISABLE_BLUR_DIVISION_OPTIMIZATION + return false; + #else +- if (supports_simd(SK_CPU_SSE_LEVEL_SSE41)) { +- return SkBoxBlurGetPlatformProcs_SSE4(boxBlurX, boxBlurY, boxBlurXY, boxBlurYX); +- } +- else if (supports_simd(SK_CPU_SSE_LEVEL_SSE2)) { ++ if (supports_simd(SK_CPU_SSE_LEVEL_SSE2)) { + return SkBoxBlurGetPlatformProcs_SSE2(boxBlurX, boxBlurY, boxBlurXY, boxBlurYX); + } + return false; diff --git a/www/palemoon/patches/patch-memory_mozalloc_mozalloc_h b/www/palemoon/patches/patch-memory_mozalloc_mozalloc_h new file mode 100644 index 0000000..844b951 --- /dev/null +++ b/www/palemoon/patches/patch-memory_mozalloc_mozalloc_h @@ -0,0 +1,27 @@ +$OpenBSD$ + +https://hg.mozilla.org/mozilla-central/rev/68da139d0866 + +Index: memory/mozalloc/mozalloc.h +--- memory/mozalloc/mozalloc.h.orig ++++ memory/mozalloc/mozalloc.h +@@ -12,10 +12,17 @@ + * https://bugzilla.mozilla.org/show_bug.cgi?id=427099 + */ + +-#include +-#include + #if defined(__cplusplus) + # include ++// Since libstdc++ 6, including the C headers (e.g. stdlib.h) instead of the ++// corresponding C++ header (e.g. cstdlib) can cause confusion in C++ code ++// using things defined there. Specifically, with stdlib.h, the use of abs() ++// in gfx/graphite2/src/inc/UtfCodec.h somehow ends up picking the wrong abs() ++# include ++# include ++#else ++# include ++# include + #endif + #include "xpcom-config.h" + diff --git a/www/palemoon/patches/patch-xpcom_io_nsLocalFileUnix_cpp b/www/palemoon/patches/patch-xpcom_io_nsLocalFileUnix_cpp new file mode 100644 index 0000000..ed9f47a --- /dev/null +++ b/www/palemoon/patches/patch-xpcom_io_nsLocalFileUnix_cpp @@ -0,0 +1,16 @@ +$OpenBSD$ + +Like Mac OS X, we also don't have this header. + +Index: xpcom/io/nsLocalFileUnix.cpp +--- xpcom/io/nsLocalFileUnix.cpp.orig ++++ xpcom/io/nsLocalFileUnix.cpp +@@ -13,7 +13,7 @@ + + #include + #include +-#if !defined(XP_MACOSX) ++#if 0 + #include // No longer implicitly included in later glibc + #endif + #include diff --git a/www/palemoon/pkg/DESCR b/www/palemoon/pkg/DESCR new file mode 100644 index 0000000..db9b72d --- /dev/null +++ b/www/palemoon/pkg/DESCR @@ -0,0 +1,9 @@ +Pale Moon is an Open Source, Goanna-based web browser, focusing on +efficiency and ease of use. + +Pale Moon offers you a browsing experience in a browser completely built +from its own, independently developed source that has been forked off +from Firefox/Mozilla code a number of years ago, with carefully selected +features and optimizations to improve the browser's stability and user +experience, while offering full customization and a growing collection +of extensions and themes to make the browser truly your own. diff --git a/www/palemoon/pkg/PLIST b/www/palemoon/pkg/PLIST new file mode 100644 index 0000000..851ca35 --- /dev/null +++ b/www/palemoon/pkg/PLIST @@ -0,0 +1,54 @@ +@comment $OpenBSD$ +bin/palemoon +lib/palemoon-${V}/ +lib/palemoon-${V}/application.ini +lib/palemoon-${V}/browser/ +lib/palemoon-${V}/browser/blocklist.xml +lib/palemoon-${V}/browser/chrome/ +lib/palemoon-${V}/browser/chrome.manifest +lib/palemoon-${V}/browser/chrome/icons/ +lib/palemoon-${V}/browser/chrome/icons/default/ +lib/palemoon-${V}/browser/chrome/icons/default/default16.png +lib/palemoon-${V}/browser/chrome/icons/default/default32.png +lib/palemoon-${V}/browser/chrome/icons/default/default48.png +lib/palemoon-${V}/browser/components/ +lib/palemoon-${V}/browser/components/components.manifest +@lib lib/palemoon-${V}/browser/components/libbrowsercomps.so.${LIBbrowsercomps_VERSION} +lib/palemoon-${V}/browser/extensions/ +lib/palemoon-${V}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/ +lib/palemoon-${V}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png +lib/palemoon-${V}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf +lib/palemoon-${V}/browser/icons/ +lib/palemoon-${V}/browser/icons/mozicon128.png +lib/palemoon-${V}/browser/omni.ja +lib/palemoon-${V}/browser/searchplugins/ +lib/palemoon-${V}/browser/searchplugins/bing.xml +lib/palemoon-${V}/browser/searchplugins/duckduckgo-palemoon.xml +lib/palemoon-${V}/browser/searchplugins/ecosia.xml +lib/palemoon-${V}/browser/searchplugins/twitter.xml +lib/palemoon-${V}/browser/searchplugins/wikipedia.xml +lib/palemoon-${V}/browser/searchplugins/yahoo.xml +lib/palemoon-${V}/chrome.manifest +lib/palemoon-${V}/components/ +lib/palemoon-${V}/components/components.manifest +@lib lib/palemoon-${V}/components/libdbusservice.so.${LIBdbusservice_VERSION} +@lib lib/palemoon-${V}/components/libmozgnome.so.${LIBmozgnome_VERSION} +lib/palemoon-${V}/defaults/ +lib/palemoon-${V}/defaults/pref/ +lib/palemoon-${V}/defaults/pref/channel-prefs.js +lib/palemoon-${V}/dependentlibs.list +lib/palemoon-${V}/dictionaries/ +lib/palemoon-${V}/dictionaries/en-US.aff +lib/palemoon-${V}/dictionaries/en-US.dic +@lib lib/palemoon-${V}/libmozalloc.so.${LIBmozalloc_VERSION} +@lib lib/palemoon-${V}/libmozjs.so.${LIBmozjs_VERSION} +@lib lib/palemoon-${V}/libmozsqlite3.so.${LIBmozsqlite3_VERSION} +@lib lib/palemoon-${V}/libxul.so.${LIBxul_VERSION} +lib/palemoon-${V}/omni.ja +@bin lib/palemoon-${V}/palemoon +@bin lib/palemoon-${V}/palemoon-bin +lib/palemoon-${V}/platform.ini +lib/palemoon-${V}/plugin-container +lib/palemoon-${V}/precomplete +lib/palemoon-${V}/removed-files +lib/palemoon-${V}/run-mozilla.sh -- cgit v1.2.3