1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-02 01:20:54 +00:00
freebsd-ports/www/cliqz/Makefile
Mikael Urankar 4e449e031e lang/rust: Update to 1.48.0
Changes: https://github.com/rust-lang/rust/releases/tag/1.48.0

Reviewed by:	jbeich
Tested by:	bdragon, jbeich, mikael
Differential Revision:	https://reviews.freebsd.org/D27293
2020-11-24 12:48:53 +00:00

192 lines
6.8 KiB
Makefile

# $FreeBSD$
PORTNAME= cliqz
DISTVERSION= 1.38.0
PORTREVISION= 6
CATEGORIES= www
MASTER_SITES= https://s3.amazonaws.com/cdn.cliqz.com/browser-f/APT/:amazon \
http://repository.cliqz.com/dist/${CLIQZ_CHANNEL}/${DISTVERSION}/${CLIQZ_LAST_BUILD_ID}/:cliqz
DISTFILES= adult-domains.bin:amazon \
cliqz@cliqz.com.xpi:cliqz \
dat@cliqz.com.xpi:cliqz \
gdprtool@cliqz.com.xpi:cliqz \
https-everywhere@cliqz.com.xpi:cliqz
DIST_SUBDIR= ${PORTNAME}
EXTRACT_ONLY= ${DISTNAME}${_GITHUB_EXTRACT_SUFX}
MAINTAINER= fox@FreeBSD.org
COMMENT= Secure browser (Mozilla based) with built-in quick search
LICENSE= MPL20
LICENSE_FILE= ${WRKSRC}/LICENSE
DEPRECATED= Uses deprecated version of python
EXPIRATION_DATE= 2020-12-31
FETCH_DEPENDS= ca_root_nss>=0:security/ca_root_nss
LIB_DEPENDS= libdbus-1.so:devel/dbus \
libdbus-glib-1.so:devel/dbus-glib \
libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
libgraphite2.so:graphics/graphite2 \
libharfbuzz.so:print/harfbuzz \
libnspr4.so:devel/nspr \
libnssutil3.so:security/nss \
libplc4.so:devel/nspr \
libplds4.so:devel/nspr \
libvpx.so:multimedia/libvpx
BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/xt.pc:x11-toolkits/libXt \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
py${PYTHON3_DEFAULT:S/.//}-sqlite3>0:databases/py-sqlite3@py${PYTHON3_DEFAULT:S/.//} \
${RUST_DEFAULT}>=1.41:lang/${RUST_DEFAULT} \
autoconf-2.13:devel/autoconf213 \
bash:shells/bash \
graphite2>=1.3.14:graphics/graphite2 \
harfbuzz>=2.6.8:print/harfbuzz \
icu>=67.1,1:devel/icu \
libevent>=2.1.8:devel/libevent \
libvorbis>=1.3.6,3:audio/libvorbis \
libvpx>=1.8.2:multimedia/libvpx \
${LOCALBASE}/bin/python${PYTHON3_DEFAULT}:lang/python${PYTHON3_DEFAULT:S/.//g} \
llvm${LLVM_DEFAULT}>=0:devel/llvm${LLVM_DEFAULT} \
nasm:devel/nasm \
node:www/node \
nspr>=4.25:devel/nspr \
nss>=3.54:security/nss \
png>=1.6.35:graphics/png \
rust-cbindgen>=0.14.1:devel/rust-cbindgen \
sqlite3>=3.30.1:databases/sqlite3 \
v4l_compat>0:multimedia/v4l_compat \
yasm:devel/yasm \
zip:archivers/zip
USES= compiler:c++17-lang desktop-file-utils gmake gnome pkgconfig \
python:2.7,build shebangfix tar:xz xorg
USE_GNOME= cairo gdkpixbuf2 gtk20 gtk30
USE_XORG= x11 xcb xcomposite xcursor xdamage xext xfixes xi xrender xt
USE_GITHUB= yes
GH_ACCOUNT= cliqz-oss
GH_PROJECT= browser-f
USE_LDCONFIG= yes
bash_OLD_CMD= "/bin/bash"
bash_CMD= ${LOCALBASE}/bin/bash
SHEBANG_FILES= magic_build_and_package.sh
CLIQZ_CHANNEL= release
# If the DISTVERSION is updated, make sure to update the last build id from
# fetch -qo - https://repository.cliqz.com/dist/${CLIQZ_CHANNEL}/${DISTVERSION}/lastbuildid
CLIQZ_LAST_BUILD_ID= 20200721193739
CLIQZ_ICON= ${PORTNAME}.png
CLIQZ_ICON_SRC= ${WRKSRC}/mozilla-release/browser/branding/${PORTNAME}/default48.png
MOZ_DESKTOP= ${WRKSRC}/mozilla-release/toolkit/mozapps/installer/linux/rpm/mozilla.desktop
CLIQZ_DESKTOP= ${WRKSRC}/mozilla-release/toolkit/mozapps/installer/linux/rpm/cliqz.desktop
MAKE_ENV+= CQZ_BUILD_ID=${CLIQZ_LAST_BUILD_ID} \
CQZ_RELEASE_CHANNEL=${CLIQZ_CHANNEL} \
LLVM_CONFIG=llvm-config${LLVM_DEFAULT} \
LLVM_OBJDUMP=${LOCALBASE}/llvm${LLVM_DEFAULT}/bin/llvm-objdump \
PYTHON3="${LOCALBASE}/bin/python${PYTHON3_DEFAULT}" \
RUSTFLAGS=${RUSTFLAGS} \
MOZBUILD_STATE_PATH=${WRKDIR}
BINARY_ALIAS+= python3=python${PYTHON3_DEFAULT}
# Configure args passed into mach build system
MOZ_CONFIGURE_ARGS+= "--disable-crashreporter" \
"--disable-debug" \
"--disable-debug-symbols" \
"--disable-tests" \
"--disable-updater" \
"--with-system-libvpx" \
"--libclang-path=${LOCALBASE}/llvm${LLVM_DEFAULT}/lib"
.include "${.CURDIR}/Makefile.options"
.include <bsd.port.pre.mk>
# Adjust -C target-cpu if -march/-mcpu is set by bsd.cpu.mk
.if ${ARCH} == amd64 || ${ARCH} == i386
RUSTFLAGS+= ${CFLAGS:M-march=*:S/-march=/-C target-cpu=/}
.else
RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/}
.endif
.if ${ARCH:Maarch64} || ${MACHINE_CPU:Msse2}
MOZ_CONFIGURE_ARGS+= "--enable-rust-simd"
.else
MOZ_CONFIGURE_ARGS+= "--disable-rust-simd"
.endif
# Require newer Clang than what's in base system unless user opted out
.if ${CC} == cc && ${CXX} == c++ && exists(/usr/lib/libc++.so)
CPP= ${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT}
CC= ${LOCALBASE}/bin/clang${LLVM_DEFAULT}
CXX= ${LOCALBASE}/bin/clang++${LLVM_DEFAULT}
# XXX avoid warnings
USES:= ${USES:Ncompiler\:*}
.endif
post-extract:
${CP} ${DISTDIR}/${DIST_SUBDIR}/adult-domains.bin \
${WRKSRC}/mozilla-release/browser/adult-domains.bin
${MKDIR} ${WRKSRC}/obj/dist/bin/browser/features
${CP} ${DISTDIR}/${DIST_SUBDIR}/cliqz@cliqz.com.xpi \
${DISTDIR}/${DIST_SUBDIR}/https-everywhere@cliqz.com.xpi \
${DISTDIR}/${DIST_SUBDIR}/gdprtool@cliqz.com.xpi \
${WRKSRC}/obj/dist/bin/browser/features
post-patch:
@${CP} ${MOZ_DESKTOP} ${CLIQZ_DESKTOP}
@${REINPLACE_CMD} -e 's/@MOZ_APP_DISPLAYNAME@/Cliqz Internet/g' \
-e 's/@MOZ_APP_NAME@/${PORTNAME}/g' \
-e '/Icon=${PORTNAME}/ s/${PORTNAME}/${CLIQZ_ICON}/' \
-e '/StartupWMClass/d' \
${CLIQZ_DESKTOP}
.for MOZ_CONFIGURE_ARG in ${MOZ_CONFIGURE_ARGS}
@${ECHO_CMD} "ac_add_options" ${MOZ_CONFIGURE_ARG} >> \
${WRKSRC}/mozilla-release/browser/config/cliqz.mozconfig;
.endfor
# This prevents linker exhausting memory in i386 builds
.if ${ARCH} == "i386"
@${ECHO_CMD} 'export LDFLAGS="-Wl,--no-keep-memory -Wl,--as-needed"' >> \
${WRKSRC}/mozilla-release/browser/config/cliqz.mozconfig
.endif
# Disable vendor checksums like lang/rust
@${REINPLACE_CMD} 's,"files":{[^}]*},"files":{},' \
${WRKSRC}/mozilla-release/third_party/rust/*/.cargo-checksum.json
pre-configure-script:
# Check that the running kernel has COMPAT_FREEBSD11 required by lang/rust post-ino64
@${SETENV} CC="${CC}" OPSYS="${OPSYS}" OSVERSION="${OSVERSION}" WRKDIR="${WRKDIR}" \
${SH} ${SCRIPTSDIR}/rust-compat11-canary.sh
do-build:
(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./magic_build_and_package.sh)
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}
(cd ${WRKSRC}/obj/dist/${PORTNAME} && \
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/${PORTNAME})
# Check if the wayland lib was generated, this happens if
# x11-toolkits/gtk30 has WAYLAND option enabled.
@if [ -f ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/libmozwayland.so ]; then \
${REINPLACE_CMD} -e 's|%%WAYLAND%%||' ${TMPPLIST}; \
else \
${REINPLACE_CMD} -e 's|%%WAYLAND%%|@comment |' ${TMPPLIST}; \
fi
@${CHMOD} 755 ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/${PORTNAME}-bin
@${CHMOD} 755 ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/${PORTNAME}
post-install:
${RLN} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/${PORTNAME}-bin ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
${INSTALL_DATA} ${CLIQZ_DESKTOP} ${STAGEDIR}${PREFIX}/share/applications/
${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
@${CP} ${CLIQZ_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${CLIQZ_ICON}
.include <bsd.port.post.mk>