[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / security / tor-browser

Annotation of pkgsrc/security/tor-browser/Makefile, Revision 1.76

1.76    ! wiz         1: # $NetBSD: Makefile,v 1.75 2020/08/31 18:11:22 wiz Exp $
1.1       ryoon       2:
1.76    ! wiz         3: DISTNAME=      src-firefox-tor-browser-78.3.0esr-10.0-2-build2
        !             4: PKGNAME=       tor-browser-10.0
1.56      wiz         5: CATEGORIES=    security www
                      6: MASTER_SITES=  https://dist.torproject.org/torbrowser/${PKGVERSION_NOREV}/
1.43      wiz         7: EXTRACT_SUFX=  .tar.xz
1.63      wiz         8: DISTFILES=     ${DISTNAME}${EXTRACT_SUFX}
                      9: DISTFILES+=    tor-browser-linux64-${PKGVERSION_NOREV}_en-US${EXTRACT_SUFX}
1.66      wiz        10: #DISTFILES+=   src-tor-launcher-0.2.21.8${EXTRACT_SUFX}
1.1       ryoon      11:
1.56      wiz        12: MAINTAINER=    wiz@NetBSD.org
1.1       ryoon      13: HOMEPAGE=      https://www.torproject.org/projects/torbrowser.html.en
                     14: COMMENT=       Tor Browser based on Firefox
                     15: LICENSE=       mpl-1.1
                     16:
1.43      wiz        17: WRKSRC=                ${WRKDIR}/${DISTNAME:S/src-//}
1.14      ryoon      18:
1.37      wiz        19: DEPENDS+=      tor-[0-9]*:../../net/tor
1.69      wiz        20: DEPENDS+=      tor-browser-https-everywhere>=2020.5.20:../../security/tor-browser-https-everywhere
                     21: DEPENDS+=      tor-browser-noscript>=11.0.32:../../security/tor-browser-noscript
1.43      wiz        22:
1.37      wiz        23: # How to update this package:
                     24: #
                     25: # replace all patches with the one from the correspoding www/firefox${ESR_RELEASE}
1.69      wiz        26: # compare e.g. the output of
1.76    ! wiz        27: # diff -r -I NetBSD . ../../www/firefox78
1.69      wiz        28: # BUT keep:
                     29: # patch-.mozconfig (if still necessary)
                     30: # patch-browser_app_profile_000-tor-browser.js
                     31: # patch-toolkit_moz.configure (second chunk)
                     32: # patch-xpcom_io_TorFileUtils.cpp
1.37      wiz        33: # make the patches apply
                     34: #
                     35: # when packaged up, read MESSAGE and test by visiting https://check.torproject.org
1.63      wiz        36: # and https://panopticlick.eff.org
1.1       ryoon      37:
                     38: # Remove hardcoded build directory.
                     39: SUBST_CLASSES+=                        fix-build-dir
1.37      wiz        40: SUBST_STAGE.fix-build-dir=     pre-configure
1.1       ryoon      41: SUBST_FILES.fix-build-dir+=    .mozconfig
                     42: SUBST_SED.fix-build-dir+=      -e 's,mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@,,'
                     43:
1.63      wiz        44: SUBST_CLASSES+=                fonts
                     45: SUBST_STAGE.fonts=     pre-configure
                     46: SUBST_FILES.fonts+=    tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf
                     47: SUBST_SED.fonts+=      -e 's,<dir>fonts</dir>,<dir>${PREFIX}/lib/tor-browser/browser/fonts</dir>,'
                     48: SUBST_MESSAGE.fonts=   Fixing path to bundled fonts directory.
                     49:
1.1       ryoon      50: MOZILLA_DIR=   # empty
                     51:
1.76    ! wiz        52: # Workaround for https://bugs.llvm.org/show_bug.cgi?id=46366
        !            53: BUILDLINK_TRANSFORM.NetBSD+=   rm:-fexperimental-new-pass-manager
        !            54:
        !            55: #
        !            56: # Generate list of subst entries for various .cargo-checksum.json files.  These
        !            57: # are all handled together in one big substitution to simplify things rather
        !            58: # than one substitution entry per file, but are kept separate below to ease
        !            59: # updating and verification.
        !            60: #
        !            61:
        !            62: CKSUM_CRATES+= third_party/rust/libc
        !            63:
        !            64: # patch-third__party_rust_libc_src_unix_bsd_netbsdlike_netbsd_mod.rs
        !            65: CKSUMS+=       a3540eab4dbc52e006e84e288bad17e1dae3865fea49020e0ed8b5a7724a9532
        !            66: CKSUMS+=       5e58a2109f5eff0f497dfac150c161c1d517a2227b49e086da96c3d66522ac3a
        !            67:
        !            68: CKSUM_CRATES+= third_party/rust/getrandom
        !            69:
        !            70: # patch-third__party_rust_getrandom_src_lib.rs
        !            71: CKSUMS+=       0e52f6bde42d7bb05c297ce1c25b9879d61b28caba98f6226a152bff538db6c2
        !            72: CKSUMS+=       394425b4ba03c21c494e64d993678f7014575b1e3d590b9ee452b5c2d83ec4ac
        !            73:
        !            74: SUBST_CLASSES+=                cksum
        !            75: SUBST_STAGE.cksum=     pre-configure
        !            76: .for crate in ${CKSUM_CRATES}
        !            77: SUBST_FILES.cksum+=    ${crate}/.cargo-checksum.json
        !            78: .endfor
        !            79: .for from to in ${CKSUMS}
        !            80: SUBST_SED.cksum+=      -e 's,${from},${to},g'
        !            81: .endfor
        !            82:
1.30      jperkin    83: .include "../../mk/bsd.prefs.mk"
                     84:
1.37      wiz        85: CONFIGURE_ARGS+=       --enable-tor-browser-data-outside-app-dir
1.56      wiz        86: CONFIGURE_ARGS+=       --with-tor-browser-version=${PKGVERSION_NOREV}
1.14      ryoon      87: CFLAGS+=               -DTOR_BROWSER_DATA_IN_HOME_DIR=1
                     88: CFLAGS+=               -DTOR_BROWSER_DATA_OUTSIDE_APP_DIR=1
1.19      wiz        89: CFLAGS+=               -fPIC
1.1       ryoon      90:
1.6       joerg      91: # workaround for link of libxul.so etc.
1.37      wiz        92: LDFLAGS+=              ${COMPILER_RPATH_FLAG}${PREFIX}/lib/${PKGBASE}
                     93: LDFLAGS+=              ${COMPILER_RPATH_FLAG}${PREFIX}/lib
                     94: LDFLAGS.DragonFly+=    -lplc4 -lnspr4
                     95: LDFLAGS.FreeBSD+=      -lplc4 -lnspr4
                     96: LDFLAGS.Linux+=                -lnspr4
1.1       ryoon      97: LDFLAGS.SunOS+=                -lm
                     98:
1.37      wiz        99: ALL_ENV+=              MOZ_APP_NAME=${PKGBASE}
1.1       ryoon     100:
1.37      wiz       101: NOT_PAX_MPROTECT_SAFE+=        lib/${PKGBASE}/tor-browser
                    102: NOT_PAX_MPROTECT_SAFE+=        lib/${PKGBASE}/tor-browser-bin
1.8       wiz       103:
1.1       ryoon     104: # Avoid ld "invalid section index" errors.
1.2       jperkin   105: BUILDLINK_TRANSFORM.SunOS+=    rm:-fdata-sections
                    106: BUILDLINK_TRANSFORM.SunOS+=    rm:-ffunction-sections
1.1       ryoon     107:
1.76    ! wiz       108: .include "../../www/firefox78/mozilla-common.mk"
1.1       ryoon     109: .include "options.mk"
                    110:
1.51      rillig    111: CHECK_INTERPRETER_SKIP+=       lib/firefox-sdk/sdk/bin/header.py
                    112: CHECK_INTERPRETER_SKIP+=       lib/firefox-sdk/sdk/bin/typelib.py
                    113: CHECK_INTERPRETER_SKIP+=       lib/firefox-sdk/sdk/bin/xpidl.py
                    114: CHECK_INTERPRETER_SKIP+=       lib/firefox-sdk/sdk/bin/xpt.py
1.1       ryoon     115:
1.37      wiz       116: CHECK_WRKREF_SKIP+=    lib/${PKGBASE}/chrome/toolkit/content/global/buildconfig.html
                    117:
                    118: MOZILLA=       ${PKGBASE}
                    119: MOZILLA_ICON=  ${WRKSRC}/browser/branding/official/default48.png
1.1       ryoon     120: MOZILLA_NAME=  TorBrowser
                    121:
1.14      ryoon     122: post-extract:
                    123:        mv ${WRKSRC}/gfx/ycbcr/yuv_row_arm.s ${WRKSRC}/gfx/ycbcr/yuv_row_arm.S
1.46      nia       124:        ${CP} ${FILESDIR}/cubeb_sun.c ${WRKSRC}/media/libcubeb/src/cubeb_sun.c
1.63      wiz       125:        mv ${WRKDIR}/tor-browser_en-US ${WRKSRC}
1.56      wiz       126: #      mv ${WRKDIR}/tor-launcher* ${WRKSRC}/browser/extensions/tor-launcher
1.14      ryoon     127:
1.1       ryoon     128: pre-configure:
                    129:        cd ${WRKSRC} && mkdir ${OBJDIR}
                    130:        cd ${WRKSRC} && autoconf
1.37      wiz       131:        cd ${WRKSRC}/${OBJDIR} && touch old-configure.vars
1.1       ryoon     132:        cd ${WRKSRC}/js/src && autoconf
                    133:
                    134: post-build:
                    135:        ${SED} -e 's|@MOZILLA@|${MOZILLA}|g'                            \
                    136:          -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|g'                       \
                    137:          -e 's|@FIREFOX_ICON@|${MOZILLA}.png|g'                        \
                    138:          < ${FILESDIR}/desktop.in                                      \
                    139:          > ${WRKDIR}/desktop
1.63      wiz       140:        ${SED} -e 's|@PREFIX@|${PREFIX}|g'                              \
                    141:          < ${FILESDIR}/tor-browser.sh                                  \
                    142:          > ${WRKDIR}/tor-browser.sh
                    143:
                    144: INSTALLATION_DIRS+=    share/applications
                    145: INSTALLATION_DIRS+=    share/pixmaps
                    146: INSTALLATION_DIRS+=    ${PREFIX}/lib/tor-browser/browser/fontconfig
                    147: INSTALLATION_DIRS+=    ${PREFIX}/lib/tor-browser/browser/fonts
1.1       ryoon     148:
                    149: post-install:
1.63      wiz       150:        ${INSTALL_SCRIPT} ${WRKDIR}/tor-browser.sh \
                    151:                ${DESTDIR}${PREFIX}/bin/tor-browser
1.1       ryoon     152:        ${INSTALL_DATA} ${WRKDIR}/desktop                               \
1.63      wiz       153:                ${DESTDIR}${PREFIX}/share/applications/${MOZILLA}.desktop
1.1       ryoon     154:        ${INSTALL_DATA} ${MOZILLA_ICON}                                 \
1.63      wiz       155:                ${DESTDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png
                    156:        ${INSTALL_DATA} ${WRKSRC}/tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf \
                    157:                ${DESTDIR}${PREFIX}/lib/tor-browser/browser/fontconfig
                    158:        ${INSTALL_DATA} ${WRKSRC}/tor-browser_en-US/Browser/fonts/* \
                    159:                ${DESTDIR}${PREFIX}/lib/tor-browser/browser/fonts
1.1       ryoon     160:
                    161: .include "../../sysutils/desktop-file-utils/desktopdb.mk"
                    162: .include "../../mk/bsd.pkg.mk"

CVSweb <webmaster@jp.NetBSD.org>