diff --git a/audio/bespokesynth/Makefile b/audio/bespokesynth/Makefile index 1feb24032266..957310a7b658 100644 --- a/audio/bespokesynth/Makefile +++ b/audio/bespokesynth/Makefile @@ -1,44 +1,45 @@ PORTNAME= bespokesynth DISTVERSIONPREFIX= v DISTVERSION= 1.2.1 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org COMMENT= Software modular synth WWW= https://www.bespokesynth.com/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= juce706>0:devel/juce706 \ pybind11>0:devel/pybind11 LIB_DEPENDS= libasound.so:audio/alsa-lib \ libfreetype.so:print/freetype2 \ libjack.so:audio/jack \ libjsoncpp.so:devel/jsoncpp \ libpng16.so:graphics/png USES= cmake:noninja desktop-file-utils gl localbase:ldflags pkgconfig python USE_GL= gl USE_GITHUB= yes GH_ACCOUNT= BespokeSynth GH_PROJECT= BespokeSynth DATADIR= ${PREFIX}/share/BespokeSynth GH_TUPLE= Ableton:link:a4e4c2f:ableton/libs/ableton-link \ chriskohlhoff:asio:01b4e87:ableton_asio/libs/ableton-link/modules/asio-standalone \ surge-synthesizer:tuning-library:eb8617be49ac3c2436cf54de6bff94a1b1c94acf:surge_synthesizer_tuning_library/libs/tuning-library \ ODDSound:MTS-ESP:fcfaa59a043d515d288c9d587bf61a0a7d7571a8:ODDSound_MTS_ESP/libs/oddsound-mts/MTS-ESP \ Ableton:link:a4e4c2f3e598e28e5bea90002f954b997b8c8c53:Ableton_link/libs/link \ cameron314:readerwriterqueue:8e7627d:readerwriterqueue/libs/readerwriterqueue CMAKE_ON= BESPOKE_SYSTEM_JUCE \ BESPOKE_SYSTEM_PYBIND11 \ BESPOKE_SYSTEM_JSONCPP CXXFLAGS+= -DJUCE_INCLUDE_PNGLIB_CODE=0 LDFLAGS+= -lpng .include diff --git a/biology/bamtools/Makefile b/biology/bamtools/Makefile index 03f62b1e6919..8ba4a4d667ec 100644 --- a/biology/bamtools/Makefile +++ b/biology/bamtools/Makefile @@ -1,22 +1,22 @@ PORTNAME= bamtools DISTVERSIONPREFIX= v DISTVERSION= 2.5.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= biology MAINTAINER= jwb@FreeBSD.org COMMENT= API and toolkit for handling BAM files WWW= https://github.com/pezmaster31/bamtools LICENSE= MIT LIB_DEPENDS+= libjsoncpp.so:devel/jsoncpp USES= cmake USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= pezmaster31 CMAKE_ON+= BUILD_SHARED_LIBS .include diff --git a/deskutils/notekit/Makefile b/deskutils/notekit/Makefile index 2930b954199d..8f775042bd90 100644 --- a/deskutils/notekit/Makefile +++ b/deskutils/notekit/Makefile @@ -1,28 +1,28 @@ PORTNAME= notekit PORTVERSION= 0.2.0 DISTVERSIONPREFIX= v -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= deskutils MAINTAINER= danfe@FreeBSD.org COMMENT= Hierarchical markdown note-taking application WWW= https://github.com/blackhole89/notekit LICENSE= GPLv3+ LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libharfbuzz.so:print/harfbuzz \ libjsoncpp.so:devel/jsoncpp USES= cmake compiler:c++17-lang gnome pkgconfig USE_GNOME= gdkpixbuf2 gtkmm30 gtksourceviewmm3 USE_GITHUB= yes GH_ACCOUNT= blackhole89 PORTSCOUT= skipv:latest,latest-deb post-patch: @${REINPLACE_CMD} -e '/workaround for old jsoncpp/d' \ ${WRKSRC}/mainwindow.cpp .include diff --git a/devel/cmake-core/Makefile b/devel/cmake-core/Makefile index 2048f1a6092d..350a955c5ae5 100644 --- a/devel/cmake-core/Makefile +++ b/devel/cmake-core/Makefile @@ -1,100 +1,101 @@ PORTNAME= cmake DISTVERSION= ${_CMAKE_VERSION} +PORTREVISION= 1 CATEGORIES= devel PKGNAMESUFFIX= -core MAINTAINER= kde@FreeBSD.org COMMENT= Cross-platform Makefile generator WWW= https://www.cmake.org/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/Copyright.txt LIB_DEPENDS= libexpat.so:textproc/expat2 \ libjsoncpp.so:devel/jsoncpp \ librhash.so:security/rhash \ libuv.so:devel/libuv USES= cmake:_internal compiler:c++17-lang cpe localbase ncurses ssl CPE_VENDOR= cmake_project HAS_CONFIGURE= yes CONFIGURE_CMD= ${WRKSRC}/bootstrap CONFIGURE_LOG= Bootstrap.cmk/cmake_bootstrap.log CONFIGURE_ARGS= --prefix=${PREFIX} \ --datadir="/${DATADIR_REL}" \ --docdir="/${DOCSDIR_REL}" \ --init="${BUILD_WRKSRC}/InitialCache.cmake" \ --parallel=${MAKE_JOBS_NUMBER} \ --system-bzip2 \ --system-expat \ --system-jsoncpp \ --system-liblzma \ --system-libarchive \ --system-librhash \ --system-libuv \ --system-zlib \ --system-zstd \ --no-system-cppdap \ --no-system-curl \ --no-system-nghttp2 \ --verbose .if defined(WITH_CCACHE_BUILD) CONFIGURE_ARGS+= --enable-ccache .endif CONFIGURE_ENV= MAKE=${MAKE} # Quick fix to enable build with non-base SSL (CFLAGS/LDFLAGS only) (PR: 274512) CFLAGS+= -I${OPENSSLINC} CXXFLAGS+= -D__BSD_VISIBLE LDFLAGS+= -L${OPENSSLLIB} SUB_FILES= InitialCache.cmake BUILD_WRKSRC= ${WRKDIR}/.build CONFIGURE_WRKSRC= ${BUILD_WRKSRC} INSTALL_WRKSRC= ${BUILD_WRKSRC} OPTIONS_DEFINE= DOCS CPACK OPTIONS_DEFAULT= CPACK OPTIONS_SUB= yes CPACK_DESC= Enable FreeBSD generator in CPack CPACK_LIB_DEPENDS= libpkg.so:${PKG_ORIGIN} CPACK_SUB_LIST= CPACK_OPTION_VALUE="ON" CPACK_SUB_LIST_OFF= CPACK_OPTION_VALUE="OFF" post-patch: @(${FIND} ${WRKSRC}/Modules -name "*.cmake" -print0; \ ${FIND} ${WRKSRC}/Tests -name "CMakeLists.txt" -print0 ) | \ ${XARGS} -0 -n 100 ${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g; \ s|/usr/X11R6|${LOCALBASE}|g' @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/Source/cmLocalGenerator.cxx \ ${WRKSRC}/Source/CPack/cmCPackGenerator.cxx \ ${WRKSRC}/bootstrap @${REINPLACE_CMD} -e 's|_compiler=\"ccache|_compiler="${CCACHE_BIN}|g' \ ${WRKSRC}/bootstrap @${REINPLACE_CMD} -e 's|/usr/include|${LOCALBASE}/include|' \ ${WRKSRC}/Modules/FindDCMTK.cmake @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/Modules/FindFLEX.cmake @${REINPLACE_CMD} -e 's|/opt/kde4|${PREFIX}|g' \ ${WRKSRC}/Modules/FindKDE4.cmake # cmake-gui(1) is installed by devel/cmake-gui. Remove the man page's source to # prevent it from being built/installed by devel/cmake. @${RM} ${WRKSRC}/Help/manual/cmake-gui.1.rst pre-configure: @${MKDIR} ${BUILD_WRKSRC} # Before running configure, substitute in the values of options # for the build. CMake's configure doesn't accept --with-foo # or similar options: it expects them to be set in CMake-style # syntax in the initial cache. @${CP} ${WRKDIR}/InitialCache.cmake ${BUILD_WRKSRC} post-install: ${INSTALL_DATA} ${WRKSRC}/Auxiliary/cmake-mode.el ${STAGEDIR}${PREFIX}/share/emacs/site-lisp .include diff --git a/devel/cmake-gui/Makefile b/devel/cmake-gui/Makefile index 1c9c4c373add..547e089a11f3 100644 --- a/devel/cmake-gui/Makefile +++ b/devel/cmake-gui/Makefile @@ -1,61 +1,62 @@ PORTNAME= cmake DISTVERSION= ${_CMAKE_VERSION} +PORTREVISION= 1 CATEGORIES= devel PKGNAMESUFFIX= -gui MAINTAINER= kde@FreeBSD.org COMMENT= Qt-based GUI for CMake WWW= https://www.cmake.org LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/Copyright.txt BUILD_DEPENDS= sphinx-build:textproc/py-sphinx@${PY_FLAVOR} LIB_DEPENDS= libcurl.so:ftp/curl \ libexpat.so:textproc/expat2 \ libjsoncpp.so:devel/jsoncpp \ libuv.so:devel/libuv \ librhash.so:security/rhash USES= cmake:run,insource compiler:c++17-lang desktop-file-utils libarchive \ python:build shared-mime-info qt:6 USE_QT= base CMAKE_ARGS= -DCMAKE_DATA_DIR:STRING="/${DATADIR_REL}" \ -DCMAKE_DOC_DIR:STRING="/${DOCSDIR_REL}" \ -DCMake_QT_MAJOR_VERSION=6 CMAKE_ON= BUILD_QtDialog \ CMAKE_USE_SYSTEM_CURL \ CMAKE_USE_SYSTEM_EXPAT \ CMAKE_USE_SYSTEM_FORM \ CMAKE_USE_SYSTEM_JSONCPP \ CMAKE_USE_SYSTEM_LIBARCHIVE \ CMAKE_USE_SYSTEM_LIBRHASH \ CMAKE_USE_SYSTEM_LIBUV \ SPHINX_MAN CMAKE_OFF= BUILD_CursesDialog \ CMake_SPHINX_DEPEND_ON_EXECUTABLES \ CMAKE_USE_SYSTEM_CPPDAP ALL_TARGET= cmake-gui documentation CXXFLAGS+= -D__BSD_VISIBLE INSTALL_WRKSRC= ${WRKSRC}/Source/QtDialog DISTINFO_FILE= ${.CURDIR}/../cmake-core/distinfo post-patch: @(${FIND} ${WRKSRC}/Modules -name "*.cmake" -print0; \ ${FIND} ${WRKSRC}/Tests -name "CMakeLists.txt" -print0 ) | \ ${XARGS} -0 -n 100 ${REINPLACE_CMD} -e 's,/usr/local,${LOCALBASE},g; \ s,/usr/X11R6,${LOCALBASE},g' pre-install: ${LN} -sf ${CMAKE_BIN} ${WRKSRC}/bin post-install: ${INSTALL_MAN} ${WRKSRC}/Utilities/Sphinx/man/cmake-gui.1 \ ${STAGEDIR}${PREFIX}/share/man/man1 .include diff --git a/devel/opendht/Makefile b/devel/opendht/Makefile index 39947971be6d..59fbc1d93e1c 100644 --- a/devel/opendht/Makefile +++ b/devel/opendht/Makefile @@ -1,59 +1,60 @@ PORTNAME= opendht DISTVERSIONPREFIX= v DISTVERSION= 3.2.0 +PORTREVISION= 1 CATEGORIES= devel net MAINTAINER= yuri@FreeBSD.org COMMENT= Lightweight Distributed Hash Table implementation WWW= https://github.com/savoirfairelinux/opendht/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/asio.hpp:net/asio \ boost-libs>0:devel/boost-libs \ msgpack-cxx>0:devel/msgpack-cxx \ restinio>0:www/restinio LIB_DEPENDS= libargon2.so:security/libargon2 \ libfmt.so:devel/libfmt \ libhttp_parser.so:www/http-parser \ libjsoncpp.so:devel/jsoncpp \ libllhttp.so:www/llhttp \ libnettle.so:security/nettle \ libgnutls.so:security/gnutls RUN_DEPENDS= msgpack-cxx>0:devel/msgpack-cxx TEST_DEPENDS= cppunit>0:devel/cppunit USES= cmake:testing compiler:c++17-lang localbase ncurses pathfix pkgconfig readline ssl USE_GITHUB= yes GH_ACCOUNT= savoirfairelinux USE_LDCONFIG= yes LDFLAGS+= -lcrypto CMAKE_OFF= OPENDHT_STATIC BUILD_TESTING OPENDHT_TESTS_NETWORK CMAKE_TESTING_ON= BUILD_TESTING OPENDHT_TESTS_NETWORK # tests Tests assert and crash, see https://github.com/savoirfairelinux/opendht/issues/696 OPTIONS_DEFINE= INDEX PROXY_CLIENT PROXY_SERVER PUSH_NOTIFICATIONS DOCS OPTIONS_DEFAULT= INDEX PROXY_CLIENT PROXY_SERVER PUSH_NOTIFICATIONS DOCS INDEX_DESC= Build DHT indexation feature INDEX_CMAKE_BOOL= OPENDHT_INDEX PROXY_CLIENT_DESC= Enable DHT proxy client PROXY_CLIENT_CMAKE_BOOL= OPENDHT_PROXY_CLIENT PROXY_SERVER_DESC= Enable DHT proxy server PROXY_SERVER_CMAKE_BOOL= OPENDHT_PROXY_SERVER PROXY_SERVER_LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp \ librestbed.so:www/restbed PUSH_NOTIFICATIONS_DESC= Enable push notifications support PUSH_NOTIFICATIONS_CMAKE_BOOL= OPENDHT_PUSH_NOTIFICATIONS PORTDOCS= * # several tests fail, see https://github.com/savoirfairelinux/opendht/issues/721 .include diff --git a/devel/protobuf/Makefile b/devel/protobuf/Makefile index 725b109d5081..88e3fb24df06 100644 --- a/devel/protobuf/Makefile +++ b/devel/protobuf/Makefile @@ -1,51 +1,52 @@ PORTNAME= protobuf PORTVERSION= 27.3 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= https://github.com/protocolbuffers/protobuf/releases/download/v${PORTVERSION}/ MAINTAINER= sunpoet@FreeBSD.org COMMENT= Data interchange format library WWW= https://protobuf.dev/ \ https://github.com/protocolbuffers/protobuf LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= abseil>=20230802.2:devel/abseil LIB_DEPENDS= libabsl_base.so:devel/abseil \ libjsoncpp.so:devel/jsoncpp TEST_DEPENDS= googletest>=0:devel/googletest USES= cmake:testing compiler:c++17-lang cpe localbase pathfix pkgconfig CMAKE_ARGS= -Dprotobuf_ABSL_PROVIDER=package \ -Dprotobuf_JSONCPP_PROVIDER=package CMAKE_OFF= protobuf_BUILD_CONFORMANCE \ protobuf_BUILD_EXAMPLES \ protobuf_BUILD_EXAMPLES_MULTITEST \ protobuf_BUILD_TESTS \ protobuf_DISABLE_RTTI \ protobuf_INSTALL_EXAMPLES \ protobuf_MODULE_COMPATIBLE \ protobuf_REMOVE_INSTALLED_HEADERS CMAKE_ON= protobuf_ABSOLUTE_TEST_PLUGIN_PATH \ protobuf_ALLOW_CCACHE \ protobuf_BUILD_LIBPROTOC \ protobuf_BUILD_PROTOBUF_BINARIES \ protobuf_BUILD_PROTOC_BINARIES \ protobuf_BUILD_SHARED_LIBS \ protobuf_INSTALL \ protobuf_USE_EXTERNAL_GTEST \ protobuf_VERBOSE \ protobuf_WITH_ZLIB CMAKE_TESTING_ON= protobuf_BUILD_TESTS PATHFIX_CMAKELISTSTXT= CMakeLists.txt install.cmake USE_CXXSTD= c++17 USE_LDCONFIG= yes PLIST_SUB= PORTVERSION=${PORTVERSION} CPE_VENDOR= google .include diff --git a/games/minetest/Makefile b/games/minetest/Makefile index 4a832dee1c9b..1f0197ecde40 100644 --- a/games/minetest/Makefile +++ b/games/minetest/Makefile @@ -1,113 +1,114 @@ PORTNAME= minetest PORTVERSION= 5.9.0 +PORTREVISION= 1 CATEGORIES= games MAINTAINER= amdmi3@FreeBSD.org COMMENT= Near-infinite-world block sandbox game WWW= https://www.minetest.net/ LICENSE= LGPL21+ LICENSE_FILE= ${WRKSRC}/doc/lgpl-2.1.txt LIB_DEPENDS= libgmp.so:math/gmp \ libjsoncpp.so:devel/jsoncpp \ libzstd.so:archivers/zstd USES= cmake compiler:c++17-lang cpe iconv:wchar_t sqlite USE_GITHUB= yes CMAKE_ARGS= -DCUSTOM_EXAMPLE_CONF_DIR="${PREFIX}/etc" \ CMAKE_ON= ENABLE_SYSTEM_JSONCPP CMAKE_OFF= BUILD_DOCUMENTATION TEST_ENV= ${MAKE_ENV} LC_ALL=C.UTF-8 LDFLAGS_i386= -Wl,-znotext PORTDATA= * PORTDOCS= * OPTIONS_DEFINE= CURL SOUND NCURSES LUAJIT TEST \ DOCS EXAMPLES NLS OPTIONS_MULTI= COMP OPTIONS_GROUP= DATABASE OPTIONS_MULTI_COMP= CLIENT SERVER OPTIONS_GROUP_DATABASE= PGSQL LEVELDB REDIS SPATIAL OPTIONS_DEFAULT= CLIENT SERVER \ CURL SOUND NCURSES LUAJIT OPTIONS_SUB= yes COMP_DESC= Software components DATABASE_DESC= Database support CLIENT_DESC= Build client CLIENT_CMAKE_BOOL= BUILD_CLIENT CLIENT_LIB_DEPENDS= libpng.so:graphics/png \ libfreetype.so:print/freetype2 CLIENT_USES= gl jpeg xorg CLIENT_USE= GL=gl XORG=x11,xext,xi SERVER_DESC= Build server SERVER_CMAKE_BOOL= BUILD_SERVER CURL_DESC= Enable cURL support for fetching media CURL_CMAKE_BOOL= ENABLE_CURL CURL_LIB_DEPENDS= libcurl.so:ftp/curl SOUND_DESC= Enable sound SOUND_CMAKE_BOOL= ENABLE_SOUND NCURSES_DESC= Enable ncurses console NCURSES_CMAKE_BOOL= ENABLE_CURSES NCURSES_USES= ncurses LUAJIT_DESC= LuaJIT support LUAJIT_CMAKE_BOOL= ENABLE_LUAJIT REQUIRE_LUAJIT LUAJIT_USES= luajit:luajit-openresty PGSQL_USES= pgsql PGSQL_CMAKE_BOOL= ENABLE_POSTGRESQL LEVELDB_DESC= Enable LevelDB backend LEVELDB_CMAKE_BOOL= ENABLE_LEVELDB LEVELDB_LIB_DEPENDS= libleveldb.so:databases/leveldb REDIS_DESC= Enable Redis backend REDIS_CMAKE_BOOL= ENABLE_REDIS REDIS_LIB_DEPENDS= libhiredis.so:databases/hiredis SPATIAL_DESC= Enable SpatialIndex AreaStore backend SPATIAL_LIB_DEPENDS= libspatialindex.so:devel/spatialindex SPATIAL_CMAKE_BOOL= ENABLE_SPATIAL NLS_CMAKE_BOOL= ENABLE_GETTEXT NLS_USES= gettext NLS_LDFLAGS= -L${LOCALBASE}/lib TEST_CMAKE_BOOL= BUILD_UNITTESTS .include .if ${PORT_OPTIONS:MCLIENT} && ${PORT_OPTIONS:MSOUND} USES+= openal LIB_DEPENDS+= libvorbis.so:audio/libvorbis \ libogg.so:audio/libogg .endif .if ${PORT_OPTIONS:MSERVER} USE_RC_SUBR= ${PORTNAME} USERS= ${PORTNAME} GROUPS= ${PORTNAME} .endif post-extract: # make sure no bundled gmp is used @${RM} -rf ${WRKSRC}/lib/gmp ${WRKSRC}/lib/jsoncpp # bundled lua is OK, there's no option to use system one post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' \ ${WRKSRC}/cmake/Modules/*.cmake do-test-TEST-on: .if ${PORT_OPTIONS:MCLIENT} cd ${WRKDIR} && ${SETENV} ${TEST_ENV} ${STAGEDIR}${PREFIX}/bin/minetest --run-unittests .endif .if ${PORT_OPTIONS:MSERVER} cd ${WRKDIR} && ${SETENV} ${TEST_ENV} ${STAGEDIR}${PREFIX}/bin/minetestserver --run-unittests .endif .include diff --git a/games/powder-toy-devel/Makefile b/games/powder-toy-devel/Makefile index c3db2a33fa69..b1933a9f29fa 100644 --- a/games/powder-toy-devel/Makefile +++ b/games/powder-toy-devel/Makefile @@ -1,65 +1,66 @@ PORTNAME= powder-toy DISTVERSION= snapshot-369 +PORTREVISION= 1 CATEGORIES= games PKGNAMESUFFIX= -devel MAINTAINER= amdmi3@FreeBSD.org COMMENT= 'Falling sand' physics sandbox with air pressure and velocity support (snapshot version) WWW= https://powdertoy.co.uk/ \ https://github.com/The-Powder-Toy/The-Powder-Toy LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libfftw3f.so:math/fftw3-float \ libfftw3.so:math/fftw3 \ libcurl.so:ftp/curl \ libpng.so:graphics/png \ libjsoncpp.so:devel/jsoncpp USES= compiler:c++17-lang desktop-file-utils luajit \ meson pkgconfig python:build sdl USE_GITHUB= yes GH_ACCOUNT= The-Powder-Toy GH_PROJECT= The-Powder-Toy USE_SDL= sdl2 MESON_ARGS= -Dapp_exe="${PORTNAME}" CXXFLAGS_i386= -msse CONFLICTS_INSTALL=powder-toy PORTSCOUT= limit:^snapshot PORTDOCS= README.md changelog.txt OPTIONS_DEFINE= DOCS SSE OPTIONS_DEFAULT_amd64= SSE SSE_DESC= Enable SSE optimizations SSE_MESON_ON= -Dx86_sse=auto SSE_MESON_OFF= -Dx86_sse=none post-patch: @${REINPLACE_CMD} -e "s|'python3'|'${PYTHON_CMD}'|" ${WRKSRC}/meson.build do-install: ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/powder-toy ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_DATA} ${BUILD_WRKSRC}/resources/powder.desktop ${STAGEDIR}${PREFIX}/share/applications/uk.co.powdertoy.tpt.desktop # as mentioned in appdata @${MKDIR} ${STAGEDIR}${PREFIX}/share/appdata ${INSTALL_DATA} ${BUILD_WRKSRC}/resources/appdata.xml ${STAGEDIR}${PREFIX}/share/appdata/powder-toy.appdata.xml .for s in 16 24 32 48 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps .endfor ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_16.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/16x16/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_32.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/24x24/apps/powder-toy.png # for e.g. lxpanel ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_32.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/32x32/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_48.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/48x48/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/powder-toy.png do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} .for f in ${PORTDOCS} ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}/ .endfor .include diff --git a/games/powder-toy/Makefile b/games/powder-toy/Makefile index d44196760f40..16d8f4389284 100644 --- a/games/powder-toy/Makefile +++ b/games/powder-toy/Makefile @@ -1,64 +1,64 @@ PORTNAME= powder-toy DISTVERSIONPREFIX= v DISTVERSION= 98.2.365 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= games MAINTAINER= amdmi3@FreeBSD.org COMMENT= 'Falling sand' physics sandbox with air pressure and velocity support WWW= https://powdertoy.co.uk/ \ https://github.com/The-Powder-Toy/The-Powder-Toy LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libfftw3f.so:math/fftw3-float \ libfftw3.so:math/fftw3 \ libcurl.so:ftp/curl \ libpng.so:graphics/png \ libjsoncpp.so:devel/jsoncpp USES= compiler:c++17-lang desktop-file-utils luajit \ meson pkgconfig python:build sdl USE_GITHUB= yes GH_ACCOUNT= The-Powder-Toy GH_PROJECT= The-Powder-Toy USE_SDL= sdl2 MESON_ARGS= -Dapp_exe="${PORTNAME}" CXXFLAGS_i386= -msse CONFLICTS_INSTALL=powder-toy-devel PORTDOCS= README.md changelog.txt OPTIONS_DEFINE= DOCS SSE OPTIONS_DEFAULT_amd64= SSE SSE_DESC= Enable SSE optimizations SSE_MESON_ON= -Dx86_sse=auto SSE_MESON_OFF= -Dx86_sse=none post-patch: @${REINPLACE_CMD} -e 's|python3|${PYTHON_CMD}|' ${WRKSRC}/meson.build do-install: ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/powder-toy ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_DATA} ${BUILD_WRKSRC}/resources/powder.desktop ${STAGEDIR}${PREFIX}/share/applications/uk.co.powdertoy.tpt.desktop # as mentioned in appdata @${MKDIR} ${STAGEDIR}${PREFIX}/share/appdata ${INSTALL_DATA} ${BUILD_WRKSRC}/resources/appdata.xml ${STAGEDIR}${PREFIX}/share/appdata/powder-toy.appdata.xml .for s in 16 24 32 48 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps .endfor ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_16.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/16x16/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_32.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/24x24/apps/powder-toy.png # for e.g. lxpanel ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_32.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/32x32/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe_48.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/48x48/apps/powder-toy.png ${INSTALL_DATA} ${WRKSRC}/resources/generated_icons/icon_exe.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/powder-toy.png do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} .for f in ${PORTDOCS} ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}/ .endfor .include diff --git a/graphics/open3d/Makefile b/graphics/open3d/Makefile index de3e91bbf262..9c0779a51fbb 100644 --- a/graphics/open3d/Makefile +++ b/graphics/open3d/Makefile @@ -1,36 +1,36 @@ PORTNAME= Open3D DISTVERSIONPREFIX= v DISTVERSION= 0.2 -PORTREVISION= 11 +PORTREVISION= 12 CATEGORIES= graphics MAINTAINER= yuri@FreeBSD.org COMMENT= Modern library for 3D data processing WWW= http://www.open3d.org/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/../LICENSE LIB_DEPENDS= libglfw.so:graphics/glfw \ libjsoncpp.so:devel/jsoncpp \ libpng.so:graphics/png USES= cmake compiler:c++14-lang eigen:3 gl jpeg localbase:ldflags \ pkgconfig USE_GITHUB= yes GH_ACCOUNT= IntelVCL USE_GL= gl glew glu USE_LDCONFIG= yes CMAKE_ON= BUILD_SHARED_LIBS CMAKE_OFF= BUILD_TESTS BUILD_PYBIND11 BUILD_PYTHON_MODULE BUILD_PYTHON_TUTORIALS WRKSRC_SUBDIR= src LDFLAGS+= -pthread # https://github.com/IntelVCL/Open3D/issues/510 post-install: # https://github.com/IntelVCL/Open3D/issues/509 .for d in include/Open3D/IO/FileFormat include/Open3D/Visualization/Shader/GLSL @${RMDIR} ${STAGEDIR}${PREFIX}/${d} .endfor .include diff --git a/graphics/openxr/Makefile b/graphics/openxr/Makefile index 07b1bfb8c0a3..46596fcc24ff 100644 --- a/graphics/openxr/Makefile +++ b/graphics/openxr/Makefile @@ -1,20 +1,21 @@ PORTNAME= openxr DISTVERSIONPREFIX= release- DISTVERSION= 1.1.40 +PORTREVISION= 1 CATEGORIES= graphics MAINTAINER= vvd@FreeBSD.org COMMENT= OpenXR provides access to Augmented and Virtual Reality (XR-platforms) WWW= https://github.com/KhronosGroup/OpenXR-SDK LICENSE= APACHE20 LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp USES= cmake compiler:c++11-lib python:build USE_GITHUB= yes GH_ACCOUNT= KhronosGroup GH_PROJECT= OpenXR-SDK .include diff --git a/graphics/ossim/Makefile b/graphics/ossim/Makefile index 41c5c808685e..cb2d8d0e59f9 100644 --- a/graphics/ossim/Makefile +++ b/graphics/ossim/Makefile @@ -1,39 +1,40 @@ PORTNAME= ossim DISTVERSIONPREFIX=v DISTVERSION= 2.12.0 +PORTREVISION= 1 CATEGORIES= graphics geography MAINTAINER= lbartoletti@FreeBSD.org COMMENT= Powerful suite of geospatial libraries and applications WWW= https://github.com/ossimlabs/ossim LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${LOCALBASE}/bin/git:devel/git LIB_DEPENDS= libgeos.so:graphics/geos \ libgeotiff.so:graphics/libgeotiff \ libjsoncpp.so:devel/jsoncpp \ libtiff.so:graphics/tiff \ libopenjp2.so:graphics/openjpeg \ libfreetype.so:print/freetype2 \ libOpenThreads.so:graphics/osg34 USES= cmake compiler:c++11-lang jpeg localbase USE_GITHUB= yes GH_ACCOUNT= ossimlabs USE_LDCONFIG= yes CMAKE_OFF= BUILD_OSSIM_APPS CMAKE_ARGS= -DBUILD_LIBRARY_DIR:STRING=lib \ -DLIBSUFFIX:STRING="" \ -DINSTALL_ARCHIVE_DIR:STRING=lib \ -DINSTALL_LIBRARY_DIR:STRING=lib \ -DOSSIM_INCLUDE_DIR:STRING=${WRKSRC}/include OPTIONS_DEFINE= TEST OPTIONS_SUB= yes TEST_CMAKE_BOOL= BUILD_OSSIM_TESTS .include diff --git a/math/cadabra2/Makefile b/math/cadabra2/Makefile index 0032bdab50f1..81e7b97c71b9 100644 --- a/math/cadabra2/Makefile +++ b/math/cadabra2/Makefile @@ -1,57 +1,58 @@ PORTNAME= cadabra2 DISTVERSION= 2.5.4 +PORTREVISION= 1 CATEGORIES= math MAINTAINER= yuri@FreeBSD.org COMMENT= Computer algebra system for solving field theory problems WWW= https://cadabra.science/ LICENSE= LGPL3 LICENSE_FILE= ${WRKSRC}/doc/license.txt BROKEN_FreeBSD_15= compilation fails with clang-17, see https://github.com/kpeeters/cadabra2/issues/285 BUILD_DEPENDS= ${LOCALBASE}/include/websocketpp/client.hpp:devel/websocketpp LIB_DEPENDS= ${PY_BOOST} \ libboost_system.so:devel/boost-libs \ libfontconfig.so:x11-fonts/fontconfig \ libharfbuzz.so:print/harfbuzz \ libpcrecpp.so:devel/pcre \ libjsoncpp.so:devel/jsoncpp \ libgmp.so:math/gmp \ libuuid.so:misc/e2fsprogs-libuuid RUN_DEPENDS= ${PYTHON_SITELIBDIR}/sympy/__init__.py:math/py-sympy@${PY_FLAVOR} \ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR} USES= compiler:c++14-lang cmake:noninja dos2unix gettext-runtime gnome localbase:ldflags pkgconfig python sqlite tex # USES=python picks random python versions USE_GNOME= glib20 glibmm libsigc++20 USE_TEX= base latex texhash USE_GITHUB= yes GH_ACCOUNT= kpeeters GH_TAGNAME= 95ca296 # 2.5.2 + fixes for the microtex library GH_TUPLE= kpeeters:MicroTeX:d68cf35:microtex/submodules/microtex DOS2UNIX_FILES= cmake/version.cmake CMAKE_ON= ENABLE_SYSTEM_JSONCPP USE_PYTHON_3 # OFF doesn't work, still links to python3: https://github.com/kpeeters/cadabra2/issues/76 CMAKE_OFF= ENABLE_MATHEMATICA CXXFLAGS+= -I${LOCALBASE}/include/jsoncpp LDFLAGS+= -ljsoncpp PLIST_SUB= _PY_SONAME=${_PY_SONAME} OPTIONS_DEFINE= GUI OPTIONS_DEFAULT= GUI OPTIONS_SUB= yes GUI_USES= desktop-file-utils GUI_USE= GNOME=gtkmm30,gdkpixbuf2 GUI_CMAKE_BOOL= ENABLE_FRONTEND _PY_SONAME= ${PYTHON_EXT_SUFFIX} post-extract: # unbundle @${RM} -r ${WRKSRC}/libs/jsoncpp ${WRKSRC}/libs/websocketpp .include diff --git a/misc/ignition-fuel-tools/Makefile b/misc/ignition-fuel-tools/Makefile index 39b4bce2e2fc..6e7f38c3845b 100644 --- a/misc/ignition-fuel-tools/Makefile +++ b/misc/ignition-fuel-tools/Makefile @@ -1,41 +1,41 @@ PORTNAME= ignition-fuel-tools DISTVERSION= 1.2.0 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= misc MASTER_SITES= https://bitbucket.org/${BB_ACCOUNT}/${BB_PROJECT}/get/${BB_COMMIT}.tar.gz?dummy=/ MAINTAINER= yuri@FreeBSD.org COMMENT= Classes and tools for interacting with Ignition Fuel WWW= https://ignitionrobotics.org/home LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ignition-cmake==2:devel/ignition-cmake LIB_DEPENDS= libcurl.so:ftp/curl \ libignition-common3.so:devel/ignition-common \ libjsoncpp.so:devel/jsoncpp \ libuuid.so:misc/e2fsprogs-libuuid \ libyaml.so:textproc/libyaml \ libzip.so:archivers/libzip USES= cmake compiler:c++17-lang pkgconfig USE_LDCONFIG= yes CMAKE_OFF= BUILD_TESTING BB_ACCOUNT= ignitionrobotics BB_PROJECT= ign-fuel-tools BB_COMMIT= 0ffbf3a2c836 WRKSRC= ${WRKDIR}/${BB_ACCOUNT}-${BB_PROJECT}-${BB_COMMIT} PLIST_SUB+= FUEL_TOOLS_IGN_VER=fuel_tools${DISTVERSION:R:R} do-test: # 4 tests are known to fail: https://bitbucket.org/ignitionrobotics/ign-fuel-tools/issues/48/4-unit-tests-fail-unit_fuelclient_test @cd ${BUILD_WRKSRC} && \ ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DBUILD_TESTING=ON ${CMAKE_SOURCE_PATH} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} test .include diff --git a/multimedia/libopenshot/Makefile b/multimedia/libopenshot/Makefile index f93ef3384d55..eb3bb9ba3123 100644 --- a/multimedia/libopenshot/Makefile +++ b/multimedia/libopenshot/Makefile @@ -1,76 +1,76 @@ PORTNAME= libopenshot DISTVERSIONPREFIX= v DISTVERSION= 0.3.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= multimedia PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= tatsuki_makino@hotmail.com COMMENT= OpenShot Video Library WWW= https://www.openshot.org/ LICENSE= BSD3CLAUSE LGPL3+ LICENSE_COMB= multi LICENSE_FILE_BSD3CLAUSE= ${WRKSRC}/LICENSES/BSD-3-Clause.txt LICENSE_FILE_LGPL3+ = ${WRKSRC}/COPYING BUILD_DEPENDS= swig:devel/swig \ ${LOCALBASE}/include/zmq.hpp:net/cppzmq LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \ libbabl-0.1.so:x11/babl \ libjsoncpp.so:devel/jsoncpp \ libopenshot-audio.so:audio/libopenshot-audio \ libpython${PYTHON_VER}${PYTHON_ABIVER}.so:lang/python${PYTHON_SUFFIX} \ libzmq.so:net/libzmq4 USES= cmake pkgconfig python:build qt:5 USE_CXXSTD= c++17 USE_GITHUB= yes GH_ACCOUNT= OpenShot USE_LDCONFIG= yes USE_PYTHON= flavors USE_QT= core gui widgets buildtools:build qmake:build CMAKE_ON= USE_SYSTEM_JSONCPP DISABLE_BUNDLED_JSONCPP\ USE_HW_ACCEL ENABLE_PYTHON\ CMAKE_DISABLE_FIND_PACKAGE_Catch2 CMAKE_OFF= ENABLE_PARALLEL_CTEST VERBOSE_TESTS ENABLE_COVERAGE\ APPIMAGE_BUILD BUILD_TESTING ENABLE_JAVA ENABLE_TESTS DEBUG_FLAGS?= -g DEBUG_FLAGS+= -D_DEBUG -DJUCE_FORCE_DEBUG=1 PLIST_SUB= VERSION=${DISTVERSION} OPTIONS_DEFINE= DOCS DOXYGEN IMAGEMAGICK OPENCV RESVG RUBY OPTIONS_DEFAULT= IMAGEMAGICK OPENCV OPTIONS_SUB= yes RESVG_DESC?= SVG vector graphics support via resvg DOCS_CMAKE_ON= -DCMAKE_INSTALL_DOCDIR:PATH=${DOCSDIR_REL:Q} DOCS_PORTDOCS= * DOXYGEN_IMPLIES= DOCS DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen DOXYGEN_CMAKE_BOOL= ENABLE_LIB_DOCS DOXYGEN_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Doxygen IMAGEMAGICK_USES= magick IMAGEMAGICK_CMAKE_BOOL= ENABLE_MAGICK IMAGEMAGICK_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_ImageMagick OPENCV_LIB_DEPENDS= libopencv_core.so:graphics/opencv \ libprotobuf.so:devel/protobuf OPENCV_CMAKE_BOOL= ENABLE_OPENCV OPENCV_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_OpenCV\ CMAKE_DISABLE_FIND_PACKAGE_Protobuf OPENCV_CMAKE_ON= -DOpenCV_DIR:STRING=${LOCALBASE:Q}/cmake/opencv4 RESVG_LIB_DEPENDS= libresvg.so:graphics/resvg-capi RESVG_USE_OFF= QT=svg RESVG_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Resvg RESVG_CMAKE_ON= -DRESVGDIR:STRING=${LOCALBASE:Q} RUBY_LIB_DEPENDS= libruby${RUBY_SUFFIX}.so:lang/ruby${RUBY_SUFFIX} RUBY_USES= ruby:build RUBY_CMAKE_BOOL= ENABLE_RUBY RUBY_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Ruby .if !exists(/usr/include/omp.h) USES+= compiler:gcc-c++17-lib .else USES+= compiler:c++17-lang .endif .include diff --git a/net-p2p/eiskaltdcpp-daemon/Makefile b/net-p2p/eiskaltdcpp-daemon/Makefile index 869180d8c14b..546aa4e239a4 100644 --- a/net-p2p/eiskaltdcpp-daemon/Makefile +++ b/net-p2p/eiskaltdcpp-daemon/Makefile @@ -1,44 +1,44 @@ PORTNAME= eiskaltdcpp -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= net-p2p PKGNAMESUFFIX= -daemon MAINTAINER= ports@FreeBSD.org COMMENT= EiskaltDC++ client daemon LICENSE= GPLv3 LIB_DEPENDS= libeiskaltdcpp.so:net-p2p/eiskaltdcpp-lib MASTERDIR= ${.CURDIR}/../eiskaltdcpp-lib USES= cmake:insource gettext compiler:c++11-lib ssl OPTIONS_SINGLE= UI OPTIONS_SINGLE_UI= NOUI XMLRPC JSONRPC OPTIONS_DEFAULT= JSONRPC UI_DESC= Daemon user interface NOUI_DESC= Daemon without any UI XMLRPC_DESC= XMLRPC interface support (deprecated) JSONRPC_DESC= JSONRPC interface support PLIST_FILES= bin/${PORTNAME}${PKGNAMESUFFIX} \ share/man/man1/${PORTNAME}${PKGNAMESUFFIX}.1.gz CMAKE_ARGS+= -DUSE_QT:BOOL=OFF CMAKE_ARGS+= -DUSE_GTK:BOOL=OFF CMAKE_ARGS+= -DCREATE_MO:BOOL=OFF BUILD_WRKSRC= ${WRKSRC}/${PORTNAME}${PKGNAMESUFFIX} INSTALL_WRKSRC= ${WRKSRC}/${PORTNAME}${PKGNAMESUFFIX} XMLRPC_BROKEN= xmlrpcserver.h:624:38: error: no member named 'getMethodList' in 'ServerThread' XMLRPC_LIB_DEPENDS= libxmlrpc++.so:net/xmlrpc-c XMLRPC_CMAKE_ON= -DXMLRPC_DAEMON:BOOL=ON -DJSONRPC_DAEMON:BOOL=OFF -DNO_UI_DAEMON:BOOL=OFF JSONRPC_LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp JSONRPC_CMAKE_ON= -DXMLRPC_DAEMON:BOOL=OFF -DJSONRPC_DAEMON:BOOL=ON -DNO_UI_DAEMON:BOOL=OFF -DLOCAL_JSONCPP:BOOL=OFF NOUI_CMAKE_ON= -DXMLRPC_DAEMON:BOOL=OFF -DJSONRPC_DAEMON:BOOL=OFF -DNO_UI_DAEMON:BOOL=ON .include "${MASTERDIR}/Makefile" diff --git a/net/flower/Makefile b/net/flower/Makefile index 2b9ae7bb96dd..bc844f7be2c5 100644 --- a/net/flower/Makefile +++ b/net/flower/Makefile @@ -1,27 +1,27 @@ PORTNAME= flower DISTVERSIONPREFIX= v DISTVERSION= 0.10 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= net MAINTAINER= ed@FreeBSD.org COMMENT= Label-based networking daemon WWW= https://github.com/NuxiNL/flower LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libarpc.so:devel/arpc \ libjsoncpp.so:devel/jsoncpp USES= cmake:insource compiler:c++17-lang localbase:ldflags tar:xz USE_GITHUB= yes GH_ACCOUNT= NuxiNL CFLAGS+= -I${LOCALBASE}/include/jsoncpp # Require the unit tests to pass prior to installing. post-build: @trap '' PIPE && ${WRKSRC}/flower_unittests .include diff --git a/net/liblinphone/Makefile b/net/liblinphone/Makefile index 55b6ab3d83ce..fd93357be76b 100644 --- a/net/liblinphone/Makefile +++ b/net/liblinphone/Makefile @@ -1,61 +1,62 @@ PORTNAME= liblinphone DISTVERSION= 5.2.94 +PORTREVISION= 1 CATEGORIES= net MAINTAINER= bofh@FreeBSD.org COMMENT= SIP library supporting voice/video calls and text messaging WWW= https://www.linphone.org/technical-corner/liblinphone.html LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pystache>=0:textproc/py-pystache@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} \ doxygen:devel/doxygen \ xsd>0:devel/xsd LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \ libbelcard.so:deskutils/belcard \ libbellesip.so:net/belle-sip \ libbelr.so:textproc/belr \ libbzrtp.so:security/bzrtp \ libjsoncpp.so:devel/jsoncpp \ liblime.so:security/lime \ libmediastreamer.so:net/mediastreamer \ libortp.so:net/ortp \ libsoci_core.so:databases/soci \ libxerces-c.so:textproc/xerces-c3 USES= cmake compiler:c++17-lang gnome iconv pkgconfig python:build sqlite USE_GITLAB= yes GL_SITE= https://gitlab.linphone.org/BC GL_ACCOUNT= public USE_GNOME= libxml2 USE_LDCONFIG= yes CMAKE_ARGS= -DCMAKE_PREFIX_PATH=${LOCALBASE} \ -DCMAKE_SKIP_INSTALL_RPATH=ON \ -DENABLE_FLEXIAPI=NO \ -DENABLE_NLS=NO \ -DENABLE_QRCODE=NO \ -DENABLE_STATIC=NO \ -DENABLE_STRICT=NO \ -DENABLE_UNIT_TESTS=NO OPTIONS_DEFINE= LDAP VIDEO OPTIONS_DEFAULT= LDAP VIDEO OPTIONS_SUB= yes LDAP_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2 LDAP_USES= ldap LDAP_CMAKE_BOOL= ENABLE_LDAP VIDEO_CMAKE_BOOL= ENABLE_VIDEO post-patch: .for h in xml conference-info conference-info-linphone-extension @${REINPLACE_CMD} '/^#error/d' ${WRKSRC}/src/xml/${h}.h .endfor post-install: ${RM} -r ${STAGEDIR}${PREFIX}/share/doc/${DISTNAME} .include diff --git a/science/orthanc-dicomweb/Makefile b/science/orthanc-dicomweb/Makefile index 1ba47090fc24..a3da463d7be8 100644 --- a/science/orthanc-dicomweb/Makefile +++ b/science/orthanc-dicomweb/Makefile @@ -1,63 +1,63 @@ PORTNAME= orthanc-dicomweb DISTVERSION= 1.8 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= science MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-dicom-web/:main \ https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \ https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty \ https://orthanc.osimis.io/ThirdPartyDownloads/dicom-web/:thirdpartydicomweb DISTFILES= OrthancDicomWeb-${PORTVERSION}.tar.gz:main EXTRADISTFILES= Orthanc-1.11.0.tar.gz:framework \ e2fsprogs-1.44.5.tar.gz:thirdparty \ bootstrap-4.3.1.zip:thirdpartydicomweb \ vuejs-2.6.10.tar.gz:thirdpartydicomweb \ axios-0.19.0.tar.gz:thirdpartydicomweb \ Font-Awesome-4.7.0.tar.gz:thirdpartydicomweb \ bootstrap-vue-2.0.0-rc.24-dist.tar.gz:thirdpartydicomweb \ babel-polyfill-6.26.0.min.js.gz:thirdpartydicomweb DISTFILES+= ${EXTRADISTFILES} DIST_SUBDIR= orthanc EXTRACT_ONLY= OrthancDicomWeb-${PORTVERSION}.tar.gz MAINTAINER= maintainer.freebsd@xpoundit.com COMMENT= Orthanc plugin to bring support of the DICOMweb standard into Orthanc WWW= https://www.orthanc-server.com/static.php?page=dicomweb LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCPlugin.h:science/orthanc LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \ libexpat.so:textproc/expat2 \ libgdcmCommon.so:devel/gdcm \ libicudata.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libopenjp2.so:graphics/openjpeg \ libpugixml.so:textproc/pugixml RUN_DEPENDS= Orthanc:science/orthanc USES= cmake localbase python:build USE_LDCONFIG= yes CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources \ -DORTHANC_FRAMEWORK_SOURCE=path CMAKE_OFF= USE_SYSTEM_UUID CFLAGS+= -DORTHANC_ENABLE_LOGGING_PLUGIN -DNDEBUG CXXFLAGS+= -DNDEBUG WRKSRC= ${WRKDIR}/OrthancDicomWeb-${PORTVERSION} PLIST_SUB= DISTVERSION=${DISTVERSION} post-extract: ${MKDIR} ${WRKSRC}/ThirdPartyDownloads .for f in ${EXTRADISTFILES:C/:[^:]*//} ${CP} ${DISTDIR}/${DIST_SUBDIR}/${f} ${WRKSRC}/ThirdPartyDownloads .endfor ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0.tar.gz do-test: @cd ${BUILD_WRKSRC} && ./UnitTests .include diff --git a/science/orthanc-mysql/Makefile b/science/orthanc-mysql/Makefile index effe8e925b6f..60fb30c89935 100644 --- a/science/orthanc-mysql/Makefile +++ b/science/orthanc-mysql/Makefile @@ -1,51 +1,51 @@ PORTNAME= orthanc-mysql DISTVERSION= 4.3 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= science MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-mysql/:main \ https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \ https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty DISTFILES= OrthancMySQL-${PORTVERSION}.tar.gz:main \ Orthanc-1.9.3.tar.gz:framework \ e2fsprogs-1.44.5.tar.gz:thirdparty DIST_SUBDIR= orthanc EXTRACT_ONLY= OrthancMySQL-${PORTVERSION}.tar.gz MAINTAINER= maintainer.freebsd@xpoundit.com COMMENT= Orthanc plugin to use MySQL/MariaDB for indexing or storage WWW= https://www.orthanc-server.com/static.php?page=mysql LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs \ libcurl.so:ftp/curl \ libgdcmCommon.so:devel/gdcm \ libjsoncpp.so:devel/jsoncpp \ libpugixml.so:textproc/pugixml RUN_DEPENDS= Orthanc:science/orthanc USES= cmake localbase mysql:client python:build ssl USE_CXXSTD= c++14 # googletest 1.13 USE_LDCONFIG= yes WRKSRC= ${WRKDIR}/OrthancMySQL-${PORTVERSION} CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources \ -DORTHANC_FRAMEWORK_SOURCE=path CMAKE_OFF= DBUILD_UNIT_TESTS USE_SYSTEM_ORTHANC_SDK USE_SYSTEM_UUID CMAKE_SOURCE_PATH= ${WRKSRC}/MySQL CFLAGS+= -DORTHANC_ENABLE_LOGGING_PLUGIN -DNDEBUG CXXFLAGS+= -I${LOCALBASE}/include -DNDEBUG PLIST_SUB= DISTVERSION=${DISTVERSION} post-extract: ${MKDIR} ${WRKSRC}/MySQL/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/MySQL/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-1.9.3.tar.gz ${WRKSRC}/MySQL/ThirdPartyDownloads ${TAR} -C ${WRKSRC}/MySQL/ThirdPartyDownloads -xf ${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-1.9.3.tar.gz .include diff --git a/science/orthanc-postgresql/Makefile b/science/orthanc-postgresql/Makefile index 1e629fe4443e..aa60b313a934 100644 --- a/science/orthanc-postgresql/Makefile +++ b/science/orthanc-postgresql/Makefile @@ -1,49 +1,49 @@ PORTNAME= orthanc-postgresql DISTVERSION= 4.0 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= science MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-postgresql/:main \ https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \ https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty DISTFILES= OrthancPostgreSQL-${PORTVERSION}.tar.gz:main \ Orthanc-1.9.3.tar.gz:framework \ e2fsprogs-1.44.5.tar.gz:thirdparty DIST_SUBDIR= orthanc EXTRACT_ONLY= OrthancPostgreSQL-${PORTVERSION}.tar.gz MAINTAINER= maintainer.freebsd@xpoundit.com COMMENT= Orthanc plugin to use PostgreSQL for indexing or storage WWW= https://www.orthanc-server.com/static.php?page=postgresql LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs \ libgdcmCommon.so:devel/gdcm \ libjsoncpp.so:devel/jsoncpp \ libpugixml.so:textproc/pugixml RUN_DEPENDS= Orthanc:science/orthanc USES= cmake compiler:c11 localbase pgsql:11+ python:build ssl USE_LDCONFIG= yes WRKSRC= ${WRKDIR}/OrthancPostgreSQL-${PORTVERSION} CMAKE_SOURCE_PATH= ${WRKSRC}/PostgreSQL CMAKE_OFF= BUILD_UNIT_TESTS USE_SYSTEM_ORTHANC_SDK USE_SYSTEM_UUID CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources \ -DORTHANC_FRAMEWORK_SOURCE=path CXXFLAGS+= -I${LOCALBASE}/include -DNDEBUG LDFLAGS+= -L${LOCALBASE}/lib CFLAGS+= -DORTHANC_ENABLE_LOGGING_PLUGIN -DNDEBUG PLIST_SUB= DISTVERSION=${DISTVERSION} post-extract: ${MKDIR} ${WRKSRC}/PostgreSQL/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/PostgreSQL/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-1.9.3.tar.gz ${WRKSRC}/PostgreSQL/ThirdPartyDownloads ${TAR} -C ${WRKSRC}/PostgreSQL/ThirdPartyDownloads -xf ${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3.tar.gz .include diff --git a/science/orthanc-webviewer/Makefile b/science/orthanc-webviewer/Makefile index 9c38ec49dd0f..2c17c776977f 100644 --- a/science/orthanc-webviewer/Makefile +++ b/science/orthanc-webviewer/Makefile @@ -1,65 +1,65 @@ PORTNAME= orthanc-webviewer DISTVERSION= 2.8 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= science MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-webviewer/:main \ https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \ http://orthanc.osimis.io/ThirdPartyDownloads/WebViewer/:thirdpartywebviewer \ http://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty DISTFILES= OrthancWebViewer-${PORTVERSION}.tar.gz:main \ jsPanel-2.3.3-fixed.zip:thirdpartywebviewer \ cornerstone-0.11.0.zip:thirdpartywebviewer \ jquery-ui-1.11.3.zip:thirdpartywebviewer \ pako-0.2.5.zip:thirdpartywebviewer \ js-url-1.8.6.zip:thirdpartywebviewer \ Orthanc-1.11.0.tar.gz:framework \ e2fsprogs-1.44.5.tar.gz:thirdparty DIST_SUBDIR= orthanc EXTRACT_ONLY= OrthancWebViewer-${PORTVERSION}.tar.gz MAINTAINER= maintainer.freebsd@xpoundit.com COMMENT= Orthanc plugin to extend Orthanc with a Web viewer of medical images WWW= https://www.orthanc-server.com/static.php?page=web-viewer LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCPlugin.h:science/orthanc LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \ libexpat.so:textproc/expat2 \ libgdcmCommon.so:devel/gdcm \ libicudata.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libopenjp2.so:graphics/openjpeg \ libsqlite3.so:databases/sqlite3 RUN_DEPENDS= Orthanc:science/orthanc USES= cmake localbase python:build USE_LDCONFIG= yes CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources \ -DORTHANC_FRAMEWORK_SOURCE=path CMAKE_OFF= USE_SYSTEM_UUID CFLAGS+= -I${LOCALBASE}/include -DORTHANC_ENABLE_LOGGING_PLUGIN -DNDEBUG CXXFLAGS+= -DNDEBUG WRKSRC= ${WRKDIR}/OrthancWebViewer-${PORTVERSION} PLIST_SUB= DISTVERSION=${DISTVERSION} post-extract: ${MKDIR} ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/jsPanel-2.3.3-fixed.zip ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/cornerstone-0.11.0.zip ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/jquery-ui-1.11.3.zip ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/pako-0.2.5.zip ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/js-url-1.8.6.zip ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/ThirdPartyDownloads ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-1.11.0.tar.gz ${WRKSRC}/ThirdPartyDownloads ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0.tar.gz post-build: @cd ${BUILD_WRKSRC} && ./UnitTests .include diff --git a/science/orthanc/Makefile b/science/orthanc/Makefile index ace2634962e7..31188282a81b 100644 --- a/science/orthanc/Makefile +++ b/science/orthanc/Makefile @@ -1,61 +1,61 @@ PORTNAME= orthanc DISTVERSION= 1.12.3 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= science MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc/ DISTNAME= Orthanc-${PORTVERSION} MAINTAINER= maintainer.freebsd@xpoundit.com COMMENT= Lightweight DICOM server for healthcare and medical research WWW= https://www.orthanc-server.com/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= protoc:devel/protobuf LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \ libcivetweb.so:www/civetweb \ libcurl.so:ftp/curl \ libdcmtkcharls.so:graphics/dcmtk \ libgtest.so:devel/googletest \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpng16.so:graphics/png \ libprotobuf.so:devel/protobuf \ libpugixml.so:textproc/pugixml \ libtiff.so:graphics/tiff \ libuuid.so:misc/e2fsprogs-libuuid \ USES= cmake gnome iconv jpeg lua python:build sqlite ssl USE_GNOME= libxml2 USE_LDCONFIG= yes USE_RC_SUBR= orthanc CMAKE_ON= USE_SYSTEM_BOOST USE_SYSTEM_CIVETWEB USE_SYSTEM_DCMTK \ USE_SYSTEM_GOOGLE_TEST USE_SYSTEM_JSONCPP USE_SYSTEM_LIBICONV \ USE_SYSTEM_LIBJPEG USE_SYSTEM_LIBPNG USE_SYSTEM_LUA \ USE_SYSTEM_OPENSSL USE_SYSTEM_PUGIXML USE_SYSTEM_SQLITE \ USE_SYSTEM_UUID USE_SYSTEM_ZLIB CMAKE_OFF= BUILD_CONNECTIVITY_CHECKS UNIT_TESTS_WITH_HTTP_CONNEXIONS CMAKE_SOURCE_PATH= ${WRKSRC}/OrthancServer CFLAGS+= -DNDEBUG CXXFLAGS+= -DNDEBUG WRKSRC= ${WRKDIR}/Orthanc-${PORTVERSION} USERS= orthanc GROUPS= orthanc PLIST_SUB+= DISTVERSION=${DISTVERSION} post-install: ${MKDIR} ${STAGEDIR}/var/db/orthanc/db/db-v5 ${MKDIR} ${STAGEDIR}${DATADIR}/plugins ${MKDIR} ${STAGEDIR}${ETCDIR} ${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${CMAKE_SOURCE_PATH}/Resources/Configuration.json ${CP} ${CMAKE_SOURCE_PATH}/Resources/Configuration.json ${STAGEDIR}${ETCDIR}/orthanc.json.sample .include diff --git a/science/paraview/Makefile b/science/paraview/Makefile index 0f75a1d16d8b..01b11a3c821c 100644 --- a/science/paraview/Makefile +++ b/science/paraview/Makefile @@ -1,175 +1,175 @@ PORTNAME= paraview DISTVERSION= ${PARAVIEW_VER}.1 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= science graphics MASTER_SITES= http://www.paraview.org/files/v${PARAVIEW_VER}/ DISTNAME= ParaView-v${PORTVERSION} MAINTAINER= thierry@FreeBSD.org COMMENT= Powerful scientific data visualization application WWW= https://www.paraview.org/ # See https://www.paraview.org/license/ LICENSE= BSD3CLAUSE BROKEN_i386= no matching member function for call to 'getArrayType' BUILD_DEPENDS= ${PYNUMPY} \ cli11>0:devel/cli11 \ utf8cpp>0:devel/utf8cpp \ fast_float>0:math/fast_float \ nlohmann-json>0:devel/nlohmann-json \ vulkan-headers>0:graphics/vulkan-headers \ ${LOCALBASE}/include/exprtk.hpp:math/exprtk \ ${PYTHON_SITELIBDIR}/matplotlib/pyplot.py:math/py-matplotlib@${PY_FLAVOR} LIB_DEPENDS= libhdf5.so:science/hdf5 \ libpng.so:graphics/png \ libtiff.so:graphics/tiff \ libfreetype.so:print/freetype2 \ libexpat.so:textproc/expat2 \ libjbig.so:graphics/jbigkit \ liborc-0.4.so:devel/orc \ libpcre.so:devel/pcre \ libicuuc.so:devel/icu \ libffi.so:devel/libffi \ libtbb.so:devel/onetbb \ libogg.so:audio/libogg \ libgl2ps.so:print/gl2ps \ libOT.so:math/openturns \ libgdal.so:graphics/gdal \ libgeos.so:graphics/geos \ libhpdf.so:print/libharu \ libproj.so:graphics/proj \ libpdalcpp.so:math/pdal \ libdrm.so:graphics/libdrm \ libcgns.so:science/cgnslib \ liblz4.so:archivers/liblz4 \ libverdict.so:math/verdict \ libnetcdf.so:science/netcdf \ libjsoncpp.so:devel/jsoncpp \ libprotobuf.so:devel/protobuf \ libpugixml.so:textproc/pugixml \ libavutil.so:multimedia/ffmpeg \ libcgraph.so:graphics/graphviz \ libxkbcommon.so:x11/libxkbcommon \ libtheora.so:multimedia/libtheora \ libgeotiff.so:graphics/libgeotiff \ libboost_thread.so:devel/boost-libs \ libfontconfig.so:x11-fonts/fontconfig \ libdouble-conversion.so:devel/double-conversion RUN_DEPENDS= ${PYNUMPY} \ bash:shells/bash \ vtk${VTK_VER:R}>0:math/vtk${VTK_VER:R} \ ${PYTHON_SITELIBDIR}/matplotlib/pyplot.py:math/py-matplotlib@${PY_FLAVOR} USES= alias cmake compiler:c11 desktop-file-utils eigen:3 fortran gl gnome \ jpeg localbase pkgconfig python qt:6 shebangfix sqlite tar:xz xorg USE_GL= gl glew glu glut USE_GNOME= libxml2 USE_QT= 5compat base svg tools webengine #buildtools:build core gui help network opengl qmake:build sql svg \ # webengine widgets x11extras xmlpatterns USE_XORG= ice sm x11 xau xcb xcursor xdamage xdmcp xext xfixes xorgproto xrender \ xxf86vm USE_LDCONFIG= yes CFLAGS+= -I${WRKSRC}/Clients/ParaView/Documentation CMAKE_ARGS+= -DPARAVIEW_BUILD_SHARED_LIBS=ON \ -DPARAVIEW_BUILD_WITH_EXTERNAL=ON \ -DVTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T=1 \ -DPARAVIEW_USE_PYTHON:BOOL=ON \ -DPARAVIEW_ENABLE_FFMPEG:BOOL=ON \ -DPARAVIEW_ENABLE_LAS:BOOL=OFF \ -DPARAVIEW_ENABLE_WEB:BOOL=ON \ -DPARAVIEW_ENABLE_GDAL:BOOL=ON \ -DPARAVIEW_ENABLE_PDAL:BOOL=ON \ -DPARAVIEW_ENABLE_OPENTURNS:BOOL=ON \ -DPARAVIEW_ENABLE_OPENTURNS:BOOL=ON \ -DPARAVIEW_ENABLE_MOTIONFX:BOOL=ON \ -DPARAVIEW_ENABLE_XDMF2:BOOL=ON \ -DPARAVIEW_ENABLE_XDMF3:BOOL=ON \ -DPARAVIEW_USE_QT:BOOL=ON \ -DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION:BOOL=OFF \ -DPARAVIEW_ENABLE_EMBEDDED_DOCUMENTATION:BOOL=OFF \ -DVTK_MODULE_USE_EXTERNAL_VTK_fmt:BOOL=OFF \ -DVTK_MODULE_USE_EXTERNAL_VTK_ioss:BOOL=OFF \ -DVTK_MODULE_USE_EXTERNAL_VTK_pegtl:BOOL=OFF \ -DVTK_MODULE_USE_EXTERNAL_VTK_token:BOOL=OFF \ -DExternalData_OBJECT_STORES="${WRKDIR}/VTK/ExternalData/MD5" \ -DFREETYPE_INCLUDE_DIRS="${LOCALBASE}/include/freetype2" .if !defined(MAINTAINER_MODE) CMAKE_ARGS+= -DVTK_FORBID_DOWNLOADS:BOOL=ON .endif MAKE_ENV= XDG_CONFIG_HOME=${WRKDIR} USE_CXXSTD= c++17 SHEBANG_GLOB= *.py SHEBANG_FILES= VTK/Examples/SearchScript.sh \ VTK/Utilities/Maintenance/*.sh \ Clients/CommandLineExecutables/paraview-config.in OPTIONS_DEFINE= DOCS EXAMPLES MPICH OSMESA OPTIONS_SUB= yes OSMESA_DESC= Use Mesa for off-screen rendering # mpi4py and other programs must be compiled against the same MPI provider MPICH_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py-mpich>=0:net/py-mpi4py-mpich@${PY_FLAVOR} MPICH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py-mpich>=0:net/py-mpi4py-mpich@${PY_FLAVOR} MPICH_USES= mpi # mpich is set by default, use mpi:openmpi if needed MPICH_CMAKE_ON= -DPARAVIEW_USE_MPI:BOOL=ON MPICH_CMAKE_OFF= -DPARAVIEW_USE_MPI:BOOL=OFF OSMESA_LIB_DEPENDS= libOSMesa.so:graphics/libosmesa OSMESA_USES_OFF= desktop-file-utils OSMESA_CMAKE_BOOL= VTK_OPENGL_HAS_OSMESA OSMESA_CMAKE_ON= -DVTK_USE_X:BOOL="OFF" \ -DOSMESA_INCLUDE_DIR:PATH=${LOCALBASE}/include/Mesa \ -DOSMESA_LIBRARY:FILEPATH=${LOCALBASE}/lib/libOSMesa.so OSMESA_CMAKE_OFF= -DVTK_USE_X:BOOL="ON" EXAMPLES_CMAKE_BOOL= PARAVIEW_ENABLE_EXAMPLES PORTEXAMPLES= * #TEST_CMAKE_ON= -DPARAVIEW_BUILD_TESTING=WANT \ -DPARAVIEW_BUILD_VTK_TESTING=WANT # Error with ADIOS2 #LIB_DEPENDS+= libadios2_c.so:misc/adios2 #CMAKE_ARGS+= -DPARAVIEW_ENABLE_ADIOS2:BOOL=ON # Missing GenericIO for CosmoTools #CMAKE_ARGS+= -DPARAVIEW_ENABLE_COSMOTOOLS:BOOL=ON # Errors with VisItBridge / VisItLib #CMAKE_ARGS+= -DPARAVIEW_ENABLE_VISITBRIDGE:BOOL=ON # MomentInvariants needs to download a module #CMAKE_ARGS+= -DPARAVIEW_ENABLE_MOMENTINVARIANTS:BOOL=ON # No package for graphics/ospray #LIB_DEPENDS+= libospray.so:graphics/ospray #CMAKE_ARGS+= -DPARAVIEW_ENABLE_RAYTRACING PLIST_SUB+= VERMAJORMINOR=${PARAVIEW_VER} VTK9_CONFLICTS= vtk.py vtkmodules/__init__.py vtkmodules/all.py \ vtkmodules/gtk vtkmodules/numpy_interface \ vtkmodules/qt vtkmodules/test vtkmodules/tk \ vtkmodules/util vtkmodules/wx vtkmodules/generate_pyi.py \ vtkmodules/web/errors.py pre-configure: ${REINPLACE_CMD} -e 's|png_set_gray_1_2_4_to_8|png_set_expand_gray_1_2_4_to_8|' \ ${PATCH_WRKSRC}/VTK/IO/Image/vtkPNGReader.cxx ${REINPLACE_CMD} -e 's|/bin/bash|${LOCALBASE}/bin/bash|' \ ${PATCH_WRKSRC}/VTK/Utilities/Maintenance/vtk_site_history.py post-install: # vtk9 is not a real run dependency, but it installs several common files .for py in ${VTK9_CONFLICTS} ${RM} -r ${STAGEDIR}${PYTHON_SITELIBDIR}/${py} .endfor post-install-EXAMPLES-on: ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} cd ${WRKSRC}/Examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} .include <./Makefile.version> .include <../../math/vtk9/Makefile.version> .include diff --git a/science/py-tensorflow/Makefile b/science/py-tensorflow/Makefile index 0dbb00230f15..0da9f2e62a8a 100644 --- a/science/py-tensorflow/Makefile +++ b/science/py-tensorflow/Makefile @@ -1,233 +1,233 @@ PORTNAME= tensorflow DISTVERSIONPREFIX= v DISTVERSION= 2.9.1 -PORTREVISION= 14 +PORTREVISION= 15 CATEGORIES= science python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= ${DISTNAME}.tar.gz MAINTAINER= amzo1337@gmail.com COMMENT= Computation using data flow graphs for scalable machine learning WWW= https://www.tensorflow.org LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN= variable has incomplete type 'StateSaver' ONLY_FOR_ARCHS= amd64 BUILD_DEPENDS= ${RUN_DEPENDS} \ ${PYTHON_PKGNAMEPREFIX}grpcio-tools>=1.22.0:devel/py-grpcio-tools@${PY_FLAVOR} \ bash:shells/bash \ cython:lang/cython \ swig:devel/swig \ bazel:devel/bazel5 \ git:devel/git LIB_DEPENDS= libnsync.so:devel/nsync \ libgpr.so:devel/grpc \ libpng.so:graphics/png \ libsnappy.so:archivers/snappy \ liblmdb.so:databases/lmdb \ libsqlite3.so:databases/sqlite3 \ libicuio.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpcre.so:devel/pcre \ libnsync.so:devel/nsync \ libprotobuf.so:devel/protobuf \ libprotobuf-c.so:devel/protobuf-c \ libre2.so:devel/re2 \ libgif.so:graphics/giflib \ libcurl.so:ftp/curl \ libflatbuffers.so:devel/flatbuffers \ libdouble-conversion.so:devel/double-conversion RUN_DEPENDS= pybind11>=2.6.2:devel/pybind11 \ ${PYTHON_PKGNAMEPREFIX}absl-py>=1.0.0:devel/py-absl-py \ ${PYTHON_PKGNAMEPREFIX}astunparse>=1.6.3:devel/py-astunparse@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.3.0:devel/py-typing-extensions@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}h5py>=2.9.0:science/py-h5py@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}flatbuffers>=2.0:devel/py-flatbuffers@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}gast>=0.5.3:devel/py-gast@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}numpy>=1.20.0:math/py-numpy@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}google-pasta>=0.1.7:devel/py-google-pasta@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}protobuf>=3.7.1:devel/py-protobuf@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}termcolor>=1.1.0:devel/py-termcolor@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}grpcio>=1.22.0:devel/py-grpcio@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}keras-preprocessing>=1.1.1:math/py-keras-preprocessing@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wrapt>=1.14.1:devel/py-wrapt@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>=0.30.0:devel/py-wheel@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}opt-einsum>=3.3.0:math/py-opt-einsum@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}packaging>=21.3:devel/py-packaging@${PY_FLAVOR} \ pybind11>=2.6.2:devel/pybind11 USES= jpeg llvm:16 python shebangfix ssl USE_CXXSTD= c++17 USE_GITHUB= yes USE_PYTHON= distutils SHEBANG_GLOB= *.py BAZEL_BOOT= --output_user_root=${WRKDIR}/bazel_out PLIST_SUB= TF_PORT_VERSION=${PORTVERSION} OPTIONS_DEFINE= CPU_OPTS XLA OPTIONS_RADIO= PARALLEL_JOBS OPTIONS_RADIO_PARALLEL_JOBS= JOBS_1 JOBS_HALF JOBS_ALL PARALLEL_JOBS_DESC= How many jobs to run during build? OPTIONS_DEFAULT= JOBS_HALF JOBS_1_DESC= Run one job JOBS_1_VARS= TF_JOBS_NUMBER=1 JOBS_HALF_DESC= Run half jobs JOBS_HALF_VARS= TF_JOBS_NUMBER="`expr \( ${MAKE_JOBS_NUMBER} + 1 \) / 2`" JOBS_ALL_DESC= Run all jobs JOBS_ALL_VARS= TF_JOBS_NUMBER=${MAKE_JOBS_NUMBER} CPU_OPTS_DESC= Enable optimisations using features available on your CPU CPU_OPTS_VARS= CPU_TARGET=native BAZEL_COPT="-c opt --copt=-march=native --copt=-mfpmath=sse" CPU_OPTS_VARS_OFF= CPU_TARGET=x86-64 XLA_DESC= Accelerated Linear Algebra XLA_VARS= XLA_OPT="1" XLA_VARS_OFF= XLA_OPT="0" .include "Makefile.MASTER_SITES" post-patch: # Set up a local repository with our pre-downloaded packages # This prevents bazel downloading the files without modifying # the bzl files. @${MKDIR} ${WRKDIR}/bazel-cache @${MKDIR} ${WRKDIR}/bazel-dist @${MKDIR} ${WRKDIR}/.bin .for file in ${DISTFILES:C/\:(.*)//} @${ECHO} "Moving ${file} to ${WRKDIR}/bazel-dist" @${CP} ${DISTDIR}/${DIST_SUBDIR}/${file} ${WRKDIR}/bazel-dist .endfor @${CP} ${PATCHDIR}/bazelrc ${WRKDIR}/bazelrc @${CP} -R ${PATCHDIR}/bazel/* \ ${WRKSRC}/third_party/ @${LN} -s ${PYTHON_CMD} ${WRKDIR}/.bin/python3 @cd ${WRKSRC} && \ ${REINPLACE_CMD} "s#--batch#${BAZEL_BOOT}\', \'--batch#" \ configure.py ${REINPLACE_CMD} "s#%%PYTHON%%#${PYTHON_VERSION}#" ${WRKSRC}/configure \ ${WRKSRC}/third_party/freebsd_python_fix.patch \ ${WRKSRC}/tensorflow/compiler/mlir/quantization/tensorflow/BUILD @${REINPLACE_CMD} "s#%%BAZEL_DIR%%#${WRKDIR}#" ${WRKDIR}/bazelrc @${REINPLACE_CMD} "s#%%BAZEL_DIST%%#${WRKDIR}#" ${WRKDIR}/bazelrc @${REINPLACE_CMD} "s#%%MLIR_LLVM_PATCH%%#/${WRKSRC}/bazel/bazel_llvm-raw_utils_bazel_configure.bzl#" \ ${WRKSRC}/tensorflow/compiler/mlir/hlo/WORKSPACE # use system pybind11, but use sed to fix includes, too many to maintain with patches @${FIND} ${WRKSRC} -type f -name '*.cc' | ${XARGS} ${REINPLACE_CMD} "s#include\/pybind11#pybind11#" # copy the toolchain over @${CP} -R ${PATCHDIR}/freebsd \ ${WRKSRC}/ @${REINPLACE_CMD} "s#%%PATH%%#${PATH}#" ${WRKDIR}/bazelrc @${REINPLACE_CMD} "s#%%PYTHON%%#${PYTHON_CMD}#" ${WRKSRC}/.bazelrc @${REINPLACE_CMD} \ -e "s#%%LOCALBASE%%#${LOCALBASE}#" \ -e "s#%%LLVM_PREFIX%%#${LLVM_PREFIX}#g" \ -e "s#%%LLVM_VERSION%%#${LLVM_VERSION}#g" \ ${WRKDIR}/bazelrc \ ${WRKSRC}/third_party/absl/system.absl.strings.BUILD \ ${WRKSRC}/freebsd/cc_toolchain_config.bzl \ ${WRKSRC}/.bazelrc \ ${WRKSRC}/tensorflow/tools/proto_text/BUILD \ ${WRKSRC}/tensorflow/BUILD \ ${WRKSRC}/tensorflow/core/BUILD \ ${WRKSRC}/third_party/systemlibs/protobuf.BUILD do-configure: @cd ${WRKSRC} && ${SETENV} \ PYTHON_BIN_PATH=${PYTHON_CMD} \ PYTHON_LIB_PATH="${PYTHON_SITELIBDIR}" \ KERAS_HOME="${WRKDIR}/.keras" \ TF_NEED_OPENCL_SYCL=0 \ TF_ENABLE_XLA=${XLA_OPT} \ TF_NEED_OPENCL=0 \ TF_NEED_MPI=0 \ TF_NEED_TENSORRT=0 \ TF_NEED_NGRAPH=0 \ TF_NEED_IGNITE=0 \ TF_NEED_ROCM=0 \ TF_NEED_CUDA=0 \ TF_SET_ANDROID_WORKSPACE=0 \ TF_DOWNLOAD_CLANG=0 \ TF_NEED_NCCL=0 \ TF_IGNORE_MAX_BAZEL_VERSION=1 \ CC_OPT_FLAGS="-march=${CPU_TARGET} -I${LOCALBASE}/include" \ PREFIX="${LOCALBASE}" \ TF_SYSTEM_LIBS="absl_py astor_archive astunparse_archive boringssl com_github_googlecloudplatform_google_cloud_cpp com_github_grpc_grpc \ com_google_absl com_google_protobuf curl cython dill_archive double_conversion functools32_archive gast_archive \ gif hwloc icu jsoncpp_git libjpeg_turbo lmdb nasm nsync opt_einsum_archive org_sqlite pasta png pybind11 six_archive snappy \ tblib_archive termcolor_archive typing_extensions_archive wrapt zlib" \ ./configure do-build: @cd ${WRKSRC} && \ bazel --bazelrc="${WRKDIR}/bazelrc" ${BAZEL_BOOT} build --jobs ${TF_JOBS_NUMBER} ${BAZEL_COPT} --host_copt="-I${LOCALBASE}/include" \ --host_linkopt="-L${LOCALBASE}/lib -lexecinfo" --linkopt="-L${LOCALBASE}/lib -lexecinfo" --copt="-I${LOCALBASE}/include" \ --verbose_failures -s \ --distdir=${WRKDIR}/bazel-dist \ //tensorflow:libtensorflow_framework.so \ //tensorflow:libtensorflow.so \ //tensorflow:libtensorflow_cc.so \ //tensorflow:install_headers \ //tensorflow/tools/pip_package:build_pip_package @cd ${WRKSRC} && ${SETENV} TMPDIR=${WRKDIR} \ bazel-bin/tensorflow/tools/pip_package/build_pip_package \ ${WRKDIR}/whl do-install: @${MKDIR} ${STAGEDIR}/${PYTHON_SITELIBDIR} @${MKDIR} ${STAGEDIR}/${LOCALBASE}/include/tensorflow @${UNZIP_NATIVE_CMD} -d ${STAGEDIR}/${PYTHON_SITELIBDIR} ${WRKDIR}/whl/${PORTNAME}-${PORTVERSION}-*.whl # put headers in the right folder ${CP} -R ${WRKSRC}/bazel-bin/tensorflow/include/tensorflow \ ${STAGEDIR}/${LOCALBASE}/include/ # pc files and libraries ${INSTALL_DATA} ${PATCHDIR}/tensorflow.pc ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/ ${INSTALL_DATA} ${PATCHDIR}/tensorflow_cc.pc ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/ @${REINPLACE_CMD} "s#%%LOCALBASE%%#${LOCALBASE}#" \ ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow.pc \ ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow_cc.pc @${REINPLACE_CMD} "s#%%VERSION%%#${PORTVERSION}#" \ ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow.pc #cleanup ${RM} ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/*.bak # install the libraries and strip @${FIND} ${WRKSRC}/bazel-bin/tensorflow/ -depth 1 -name "*.so*" | ${XARGS} -I{} \ ${INSTALL_LIB} {} ${STAGEDIR}/${LOCALBASE}/lib/ @${FIND} ${STAGEDIR}/${LOCALBASE}/lib -name "*.so*" | ${XARGS} ${STRIP_CMD} post-install: # autoplist: thousands of files, all under ${PYTHON_SITELIBDIR} @cd ${STAGEDIR}${PREFIX} && \ ${FIND} ${PYTHON_SITELIBDIR:C|^${LOCALBASE}/||} -type f -or -type l | grep -v "egg-info/" >> ${TMPPLIST} .include diff --git a/science/ttk/Makefile b/science/ttk/Makefile index f8bb00b20510..7fb4d27c9cfa 100644 --- a/science/ttk/Makefile +++ b/science/ttk/Makefile @@ -1,48 +1,48 @@ PORTNAME= ttk DISTVERSION= 1.2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= science MAINTAINER= yuri@FreeBSD.org COMMENT= Topology ToolKit: Topological data analysis and visualization WWW= https://topology-tool-kit.github.io/ LICENSE= BSD4CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_i386= compilation fails: cannot initialize a parameter of type 'const ttk::LongSimplexId *' (aka 'const long long *') with an lvalue ..., see https://github.com/topology-tool-kit/ttk/issues/852 PY_DEPENDS= ${PYNUMPY} \ ${PYTHON_PKGNAMEPREFIX}scikit-build>0:devel/py-scikit-build@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR} BUILD_DEPENDS= ${LOCALBASE}/include/boost/functional/hash.hpp:devel/boost-libs \ cli11>0:devel/cli11 \ exprtk>0:math/exprtk \ spectra>0:math/spectra \ utf8cpp>0:devel/utf8cpp \ websocketpp>0:devel/websocketpp \ ${PY_DEPENDS} BUILD_DEPENDS+= nlohmann-json>0:devel/nlohmann-json # is required by lib/cmake/paraview-5.11/vtk/VTK-vtk-module-find-packages.cmake:1167 BUILD_DEPENDS+= fast_float>0:math/fast_float # attempt to fix build failures triggered by find_package(fastfloat) from paraview's vtk cmake scripts LIB_DEPENDS= libcgraph.so:graphics/graphviz \ libembree3.so:graphics/embree \ libfreetype.so:print/freetype2 \ libjsoncpp.so:devel/jsoncpp \ libvtkRenderingCore-pv${PARAVIEW_VER}.so:science/paraview \ libzfp.so:devel/zfp RUN_DEPENDS= ${PY_DEPENDS} USES= cmake eigen:3 compiler:c++11-lang gl python sqlite xorg USE_GL= glew USE_XORG= x11 USE_GITHUB= yes GH_ACCOUNT= topology-tool-kit CMAKE_ARGS= -DPython3_EXECUTABLE=${PYTHON_CMD} post-stage: ${RM} ${STAGEDIR}${PREFIX}/include/Python.h .include <../../science/paraview/Makefile.version> .include diff --git a/sysutils/fusefs-securefs/Makefile b/sysutils/fusefs-securefs/Makefile index 38e30afab145..06b1c52881bd 100644 --- a/sysutils/fusefs-securefs/Makefile +++ b/sysutils/fusefs-securefs/Makefile @@ -1,33 +1,33 @@ PORTNAME= securefs DISTVERSION= 0.14.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= sysutils PKGNAMEPREFIX= fusefs- MAINTAINER= ports@FreeBSD.org COMMENT= Filesystem in userspace with transparent encryption and decryption WWW= https://github.com/netheril96/securefs LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.md BUILD_DEPENDS= ${LOCALBASE}/include/tclap/TCLAPConfig.h:devel/tclap LIB_DEPENDS= libutf8proc.so:textproc/utf8proc \ libargon2.so:security/libargon2 \ libjsoncpp.so:devel/jsoncpp \ libcryptopp.so:security/cryptopp \ libabsl_strings.so:devel/abseil USES= cmake compiler:c++17-lang fuse pkgconfig USE_GITHUB= yes GH_ACCOUNT= netheril96 PLIST_FILES= bin/securefs CMAKE_OFF= SECUREFS_ENABLE_BUILD_TEST \ SECUREFS_ENABLE_UNIT_TEST \ SECUREFS_USE_VCPKG CMAKE_ARGS= -DCMAKE_CXX_STANDARD=17 .include diff --git a/www/chromium/Makefile b/www/chromium/Makefile index e120da599190..8737440f1969 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -1,384 +1,384 @@ PORTNAME= chromium PORTVERSION= 128.0.6613.119 -PORTREVISION= 1 +PORTREVISION= 2 PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= www wayland MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ https://nerd.hu/distfiles/:external \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ chrome-linux-${PORTVERSION}-llvm17.profdata${EXTRACT_SUFX}:external \ pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Google web browser based on WebKit WWW= https://www.chromium.org/Home LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 i386 BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ bindgen:devel/rust-bindgen-cli \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf2 glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} \ moc=${PREFIX}/bin/moc-qt5 # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ enable_log_error_not_reached=true \ enable_nacl=false \ enable_remoting=false \ enable_widevine=true \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ extra_cxxflags="${CXXFLAGS} ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles # FreeBSD Chromium Api Key # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. GN_ARGS+= google_api_key="AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8" SUB_FILES= chromium-browser.desktop chrome SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG DRIVER KERBEROS LTO PIPEWIRE TEST WIDEVINE OPTIONS_DEFAULT= CODECS CUPS DRIVER KERBEROS PIPEWIRE SNDIO ALSA PULSEAUDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 DRIVER_DESC= Install chromedriver HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_BUILD_DEPENDS= esbuild:devel/esbuild DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="21 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="14 GB" DRIVER_MAKE_ARGS= chromedriver HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="14 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false WIDEVINE_DESC= Depend on foreign-cdm to enable playback of DRM content WIDEVINE_RUN_DEPENDS= foreign-cdm>0:www/foreign-cdm .include "Makefile.tests" TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} TEST_ALL_TARGET= ${TEST_TARGETS} .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 18 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include # rust RUSTC_VERSION!= rustc -V 2>/dev/null || true MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" \ rustc_version="${RUSTC_VERSION}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Chromium, you should have around 2GB of memory" @${ECHO_MSG} "and around ${WANTSPACE} of free disk space." @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig freetype harfbuzz-ng icu libdrm libevent libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Chromium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/rust/rust_bindgen.gni do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Chromium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/chrome.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/chromium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/chrome ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver.unstripped \ ${STAGEDIR}${PREFIX}/bin/chromedriver do-test-TEST-on: .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .include diff --git a/www/domoticz-devel/Makefile b/www/domoticz-devel/Makefile index 288235c05e30..886533c984aa 100644 --- a/www/domoticz-devel/Makefile +++ b/www/domoticz-devel/Makefile @@ -1,71 +1,72 @@ PORTNAME= domoticz PORTVERSION= 2024.7.${DOMOTICZ_REL} +PORTREVISION= 1 CATEGORIES= www PKGNAMESUFFIX= -devel MAINTAINER= kiwi@oav.net COMMENT= Home Automation System (Development Branch) WWW= https://www.domoticz.com LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/License.txt LIB_DEPENDS= libcurl.so:ftp/curl \ libboost_system.so:devel/boost-libs \ libjsoncpp.so:devel/jsoncpp \ libmosquitto.so:net/mosquitto USES= cmake compiler:c++11-lang cpe lua:53 minizip pkgconfig sqlite \ ssl USE_GITHUB= yes GH_TAGNAME= a580a6b1f CONFLICTS_INSTALL= domoticz-[234]* EXTRACT_AFTER_ARGS= --exclude ${GH_PROJECT_DEFAULT}-${GH_TAGNAME_EXTRACT}/hardware/plugins/Include \ --no-same-owner --no-same-permissions # This hack is to get rid of dependency of git while building # the package. DOMOTICZ_REL= 16186 DOMOTICZ_TS= 1724156096 USE_RC_SUBR= domoticz USERS= domoticz GROUPS= domoticz CMAKE_INSTALL_PREFIX= ${PREFIX}/domoticz CMAKE_OFF= GIT_SUBMODULE \ USE_BUILTIN_JSONCPP \ USE_BUILTIN_MINIZIP \ USE_BUILTIN_MQTT \ USE_LUA_STATIC \ USE_STATIC_BOOST \ USE_STATIC_OPENZWAVE OPTIONS_DEFINE= PRECOMP PYTHON OPTIONS_DEFAULT= PRECOMP PYTHON OPTIONS_SUB= yes PRECOMP_DESC= Enable usage of precompiled header to speed build time PYTHON_DESC= Enable support for Python Plugins PYTHON_USES= python:3.9+ PYTHON_CMAKE_BOOL= USE_PYTHON PRECOMP_CMAKE_BOOL= USE_PRECOMPILED_HEADER post-patch: @${REINPLACE_CMD} -e "s,\/opt,${PREFIX},g" ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e "s,XXXPREFIXXXX,${PREFIX}/domoticz,g" ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e "/^ADD_PRECOMPILED_HEADER/ d" ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e "s/\(#define APPVERSION\)\(.*\)/\1 ${DOMOTICZ_REL}/" ${WRKSRC}/appversion.h @${REINPLACE_CMD} -e "s/\(#define APPHASH\)\(.*\)/\1 \"${GH_TAGNAME}\"/" ${WRKSRC}/appversion.h @${REINPLACE_CMD} -e "s/\(#define APPDATE\)\(.*\)/\1 ${DOMOTICZ_TS}/" ${WRKSRC}/appversion.h post-install: ${MKDIR} ${STAGEDIR}/var/db/domoticz ${STAGEDIR}/var/run/domoticz .include diff --git a/www/domoticz/Makefile b/www/domoticz/Makefile index 5affeba9ea85..c7a1d171ec3f 100644 --- a/www/domoticz/Makefile +++ b/www/domoticz/Makefile @@ -1,62 +1,63 @@ PORTNAME= domoticz DISTVERSION= 2024.4 +PORTREVISION= 1 CATEGORIES= www MAINTAINER= kiwi@oav.net COMMENT= Home Automation System WWW= https://www.domoticz.com LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/License.txt LIB_DEPENDS= libcurl.so:ftp/curl \ libboost_system.so:devel/boost-libs \ libjsoncpp.so:devel/jsoncpp \ libmosquitto.so:net/mosquitto BUILD_DEPENDS= cereal>=1.2.2:devel/cereal USES= cmake compiler:c++11-lang cpe minizip pkgconfig ssl lua:53 sqlite OPTIONS_SUB= YES OPTIONS_DEFINE= PYTHON TELLDUS PRECOMP OPTIONS_DEFAULT= PYTHON PRECOMP PYTHON_DESC= Enable Python for Plugins and Event-Scripts TELLDUS_DESC= Enable Tellstick Telldus support PRECOMP_DESC= Enable usage of precompiled header to speed build time .include USE_GITHUB= yes USE_RC_SUBR= domoticz USERS= domoticz GROUPS= domoticz CMAKE_INSTALL_PREFIX= ${PREFIX}/domoticz CMAKE_OFF+= GIT_SUBMODULE USE_STATIC_BOOST USE_OPENSSL_STATIC USE_STATIC_BOOST \ USE_BUILTIN_SQLITE USE_BUILTIN_MINIZIP USE_BUILTIN_JSONCPP \ USE_BUILTIN_MQTT USE_STATIC_OPENZWAVE .if ${PORT_OPTIONS:MPYTHON} CMAKE_ON+= USE_PYTHON USES+= python:3.9+ .else CMAKE_OFF+= USE_PYTHON .endif .if ${PORT_OPTIONS:MTELLDUS} LIB_DEPENDS+= libtelldus-core.so:comms/telldus-core .endif .if ${PORT_OPTIONS:MPRECOMP} CMAKE_ON+= USE_PRECOMPILED_HEADER .else CMAKE_OFF+= USE_PRECOMPILED_HEADER .endif post-install: ${MKDIR} ${STAGEDIR}/var/db/domoticz ${STAGEDIR}/var/run/domoticz .include diff --git a/www/iridium/Makefile b/www/iridium/Makefile index 63d1b4b8cfeb..ee474bde6fb6 100644 --- a/www/iridium/Makefile +++ b/www/iridium/Makefile @@ -1,357 +1,357 @@ PORTNAME= iridium PORTVERSION= 2024.08.128.2 -PORTREVISION= 1 +PORTREVISION= 2 PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= www wayland MASTER_SITES= https://downloads.iridiumbrowser.de/source/ \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio PKGNAMESUFFIX= -browser DISTNAME= ${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION} DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Iridium browser WWW= https://iridiumbrowser.de/ LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 i386 BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ bindgen:devel/rust-bindgen-cli \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf2 glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} \ moc=${PREFIX}/bin/moc-qt5 # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ chrome_pgo_phase=0 \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ enable_log_error_not_reached=true \ enable_nacl=false \ enable_remoting=false \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ extra_cxxflags="${CXXFLAGS} ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles SUB_FILES= iridium-browser.desktop iridium SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG KERBEROS LTO PIPEWIRE OPTIONS_DEFAULT= CODECS CUPS KERBEROS PIPEWIRE SNDIO ALSA PULSEAUDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="21 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="14 GB" HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="14 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 18 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include # rust RUSTC_VERSION!= rustc -V 2>/dev/null || true MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" \ rustc_version="${RUSTC_VERSION}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Iridium, you should have around 2GB of memory" @${ECHO_MSG} "and around ${WANTSPACE} of free disk space." @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig freetype harfbuzz-ng icu libdrm libevent libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Iridium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/rust/rust_bindgen.gni do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Iridium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/iridium.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR}/iridium cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/iridium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/iridium ${STAGEDIR}${PREFIX}/bin # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 @${MKDIR} ${STAGEDIR}${DATADIR}/swiftshader ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} .include diff --git a/www/qt5-webengine/Makefile b/www/qt5-webengine/Makefile index 261a0f2559f3..9b1dbab6880c 100644 --- a/www/qt5-webengine/Makefile +++ b/www/qt5-webengine/Makefile @@ -1,172 +1,173 @@ # QtWebEngine itself is a very thin layer of Qt code on top of a large part of # Chromium (everything up to the content/ layer). As such, most of the work in # this port revolves around taming Chromium and getting it to build on FreeBSD. # While it does build at the moment, there are several items that should be # investigated or improved: # - We are using several stub files, especially in Chromium's base/ and net/ # layers. We should look at implementing the missing bits instead. # - We are currently not using any sandboxing mechanism. # - We need to see if more "use_system_" flags can be passed. # - The process of porting QtWebEngine needs to be documented so we can move to # newer releases more easily. # # Also note that, due to the insane amount of patches this port needs, it tends # to lag behind the rest of the official Qt5 ones, which is why we set # QT5_VERSION and DISTINFO_FILE here. # In order to successfully build this port in poudriere you need to add # MAX_FILES_qt5_webengine=4096 to /usr/local/etc/poudriere.conf PORTNAME= webengine DISTVERSION= ${QT5_VERSION}${QT5_KDE_PATCH} +PORTREVISION= 1 CATEGORIES= www PKGNAMEPREFIX= qt5- MAINTAINER= kde@FreeBSD.org COMMENT= Qt 5 library to render web content BUILD_DEPENDS= bison:devel/bison \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libdbus-1.so:devel/dbus \ libdouble-conversion.so:devel/double-conversion \ libevent.so:devel/libevent \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libjsoncpp.so:devel/jsoncpp \ liblcms2.so:graphics/lcms2 \ libnspr4.so:devel/nspr \ libnss3.so:security/nss \ libopenh264.so:multimedia/openh264 \ libopus.so:audio/opus \ libpci.so:devel/libpci \ libpng.so:graphics/png \ libre2.so:devel/re2 \ libsnappy.so:archivers/snappy \ libvpx.so:multimedia/libvpx \ libwebp.so:graphics/webp DISTINFO_FILE= ${.CURDIR}/distinfo QT5_VERSION= ${_KDE_webengine_VERSION} OPTIONS_SINGLE= AUDIO OPTIONS_SINGLE_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_DEFAULT= ALSA AUDIO_DESC= Audio backend # Need the alsa plugins to get sound at runtime, otherwise messages # that the pcm_oss plugin can't be opened. ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= alsa-plugins>=0:audio/alsa-plugins ALSA_VARS= QMAKE_CONFIGURE_ARGS+=-alsa ALSA_VARS_OFF= QMAKE_CONFIGURE_ARGS+=-no-alsa PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_VARS= QMAKE_CONFIGURE_ARGS+=-pulseaudio PULSEAUDIO_VARS_OFF= QMAKE_CONFIGURE_ARGS+=-no-pulseaudio SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= QMAKE_CONFIGURE_ARGS+=-sndio SNDIO_VARS_OFF= QMAKE_CONFIGURE_ARGS+=-no-sndio # We pass `norecursive' to USES=qmake because src/plugins/plugins.pro checks # whether webenginewidgets is available, which fails when qmake processes all # .pro files at once. USES= gl gnome gperf jpeg minizip ninja:build nodejs:build,lts \ perl5 pkgconfig python:build qmake:norecursive,outsource \ qt-dist:5,webengine shebangfix xorg USE_GL= gl USE_GNOME= glib20 libxml2 libxslt USE_PERL5= build USE_QT= core declarative gui location network printsupport \ webchannel widgets \ buildtools:build designer:build qmake:build USE_XORG= x11 xcb xcomposite xcursor xdamage xext xfixes xi xkbfile \ xorgproto xrandr xrender xscrnsaver xtst QMAKE_CONFIGURE_ARGS= -proprietary-codecs -system-ffmpeg # We could just set it to an empty string as well. "all" does not account for # dependencies correctly in the generated Makefiles, use the right target here. ALL_TARGET= first # We need ar(1) from ports because the Chromium code uses the @file syntax. # We then need to ensure ld(1) from ports is used because of the archives ar(1) # generated. USE_BINUTILS= yes CC+= "-B${LOCALBASE}/bin" CXX+= "-B${LOCALBASE}/bin" # The build system reads the environment variable $NINJA_PATH to decide whether # to boostrap ninja or not (and also to invoke it afterwards). CC and CXX are # read by some Chromium code to determine which compiler to invoke when running # some configuration tests. # Since we use USES=qmake:norecursive, we also need to pass some variables to # MAKE_ENV because part of the configuration process happens during the build. CONFIGURE_ENV+= NINJAFLAGS="-j${MAKE_JOBS_NUMBER}" \ NINJA_PATH="${LOCALBASE}/bin/ninja" \ PATH=${CONFIGURE_WRKSRC}/bin:${LOCALBASE}/bin:${PATH} MAKE_ENV+= CC="${CC}" CXX="${CXX}" \ C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include \ ${CONFIGURE_ENV} QT_BINARIES= yes .include .if ${ARCH:Mmips*} || ${ARCH:Mpowerpc*} PLIST_SUB+= BE="" LE="@comment " .else PLIST_SUB+= BE="@comment " LE="" .endif post-extract: # Install FreeBSD's freebsd.pri file. ${CP} ${FILESDIR}/freebsd.pri ${WRKSRC}/src/buildtools/config/freebsd.pri post-extract-SNDIO-on: @cd ${WRKSRC}/src/3rdparty/chromium/media/audio && ${MKDIR} sndio openbsd @${CP} ${FILESDIR}/sndio_*put.* \ ${WRKSRC}/src/3rdparty/chromium/media/audio/sndio @${CP} ${FILESDIR}/audio_manager_openbsd.* \ ${WRKSRC}/src/3rdparty/chromium/media/audio/openbsd post-patch: @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \ ${WRKSRC}/src/3rdparty/chromium/base/linux_util.cc \ ${WRKSRC}/src/3rdparty/chromium/base/test/BUILD.gn \ ${WRKSRC}/src/3rdparty/chromium/build/toolchain/gcc_toolchain.gni \ ${WRKSRC}/src/3rdparty/chromium/chrome/common/chrome_paths.cc \ ${WRKSRC}/src/3rdparty/chromium/third_party/pdfium/core/fxge/fx_ge_linux.cpp \ ${WRKSRC}/src/3rdparty/gn/build/gen.py @${REINPLACE_CMD} -E -e 's|^(MODULE_VERSION = ).*|\1${QT5_VERSION}|' \ ${WRKSRC}/.qmake.conf .if ${ARCH:Mmips*} || ${ARCH:Mpowerpc*} @${REINPLACE_CMD} -e 's/icudtl.dat/icudtb.dat/' \ ${WRKSRC}/src/core/core_module.pro .endif pre-configure: # Link in ${PYTHON_CMD} to ${CONFIGURE_WRKSRC}/bin -- the scripts hardcode 'python' # in too many places to reasonably patch. So just link in ${PYTHON_CMD} to work around # $LOCALBASE/bin/python being python3 if the default versions is set to 3.x. ${MKDIR} ${CONFIGURE_WRKSRC}/bin && ${LN} -s ${PYTHON_CMD} ${CONFIGURE_WRKSRC}/bin/python # Unbundle a few dependencies. cd ${WRKSRC}/src/3rdparty/chromium && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries\ fontconfig freetype harfbuzz-ng libdrm libevent libpng libwebp libxml libxslt openh264 opus || ${FALSE} # Rerun syncqt.pl -- otherwise the resulting package misses some forwarding headers. cd ${WRKSRC} && ${QT_BINDIR}/syncqt.pl -version ${QT5_VERSION} post-build: # Fix version mismatches for CMake .for module in Pdf PdfWidgets WebEngine WebEngineCore WebEngineWidgets @${REINPLACE_CMD} -e '/${QT5_VERSION} $${_Qt5${module}_FIND_VERSION_EXACT}/s|${QT5_VERSION}|'"$$(${MAKE} -C ../../devel/qt5-core -VQT5_VERSION)"'|' \ ${BUILD_WRKSRC}/lib/cmake/Qt5${module}/Qt5${module}Config.cmake .endfor .include diff --git a/www/ungoogled-chromium/Makefile b/www/ungoogled-chromium/Makefile index b1fc4522b7e5..f6ed9ad85405 100644 --- a/www/ungoogled-chromium/Makefile +++ b/www/ungoogled-chromium/Makefile @@ -1,409 +1,409 @@ PORTNAME= ungoogled-chromium PORTVERSION= 128.0.6613.119 -PORTREVISION= 1 +PORTREVISION= 2 PULSEMV= 16 PULSEV= ${PULSEMV}.1 UGVERSION= ${DISTVERSION}-1 CATEGORIES= www wayland MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ https://nerd.hu/distfiles/:external \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio DISTFILES= chromium-${DISTVERSION}${EXTRACT_SUFX} \ ungoogled-chromium-${UGVERSION}.tar.gz:external \ pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Google web browser based on WebKit sans integration with Google WWW= https://github.com/ungoogled-software/ungoogled-chromium LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 i386 PATCH_DEPENDS= gpatch:devel/patch \ ${PYTHON_VERSION}:lang/python${PYTHON_SUFFIX} BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ bindgen:devel/rust-bindgen-cli \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf2 glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} \ moc=${PREFIX}/bin/moc-qt5 # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= enable_widevine=true \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ optimize_webui=true \ toolkit_views=true \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ extra_cxxflags="${CXXFLAGS} ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" # sync with flags.gni GN_ARGS+= build_with_tflite_lib=false \ chrome_pgo_phase=0 \ clang_use_chrome_plugins=false \ disable_fieldtrial_testing_config=true \ enable_backup_ref_ptr_support=false \ enable_log_error_not_reached=true \ enable_hangout_services_extension=false \ enable_mdns=false \ enable_nacl=false \ enable_reading_list=false \ enable_remoting=false \ enable_reporting=false \ enable_service_discovery=false \ exclude_unwind_tables=true \ google_api_key="" \ google_default_client_id="" \ google_default_client_secret="" \ safe_browsing_mode=0 \ treat_warnings_as_errors=false \ use_official_google_api_keys=false \ use_unofficial_version_number=false # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles SUB_FILES= ungoogled-chromium.desktop ungoogled-chromium SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG DRIVER KERBEROS LTO PIPEWIRE TEST WIDEVINE OPTIONS_DEFAULT= CODECS CUPS DRIVER KERBEROS PIPEWIRE SNDIO ALSA PULSEAUDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 DRIVER_DESC= Install chromedriver HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_BUILD_DEPENDS= esbuild:devel/esbuild DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="21 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="14 GB" DRIVER_MAKE_ARGS= chromedriver HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="14 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false WIDEVINE_DESC= Depend on foreign-cdm to enable playback of DRM content WIDEVINE_RUN_DEPENDS= foreign-cdm>0:www/foreign-cdm .include "Makefile.tests" TEST_DISTFILES= chromium-${DISTVERSION}-testdata${EXTRACT_SUFX} TEST_ALL_TARGET= ${TEST_TARGETS} .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 18 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include WRKSRC= ${WRKDIR}/chromium-${DISTVERSION} # rust RUSTC_VERSION!= rustc -V 2>/dev/null || true MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" \ rustc_version="${RUSTC_VERSION}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Ungoogled Chromium, you should have around 2GB of memory" @${ECHO_MSG} "and around ${WANTSPACE} of free disk space." @${ECHO_MSG} pre-patch: cd ${WRKDIR}/ungoogled-chromium-${UGVERSION} && ${PYTHON_CMD} \ utils/prune_binaries.py ${WRKSRC} pruning.list cd ${WRKDIR}/ungoogled-chromium-${UGVERSION} && PATCH_BIN=gpatch \ ${PYTHON_CMD} utils/patches.py apply ${WRKSRC} patches cd ${WRKDIR}/ungoogled-chromium-${UGVERSION} && ${PYTHON_CMD} \ utils/domain_substitution.py apply -r domain_regex.list -f \ domain_substitution.list -c ${WRKSRC}/domsubcache.tar.gz ${WRKSRC} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig freetype harfbuzz-ng icu libdrm libevent libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Chromium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/rust/rust_bindgen.gni do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/ungoogled-chromium.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Chromium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/ungoogled-chromium.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/ungoogled-chromium.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR}/ungoogled-chromium cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/ungoogled-chromium.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/ungoogled-chromium ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver \ ${STAGEDIR}${PREFIX}/bin/ungoogled-chromedriver do-test-TEST-on: .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .include diff --git a/x11/polybar/Makefile b/x11/polybar/Makefile index 467ece0074ef..200cf9a67302 100644 --- a/x11/polybar/Makefile +++ b/x11/polybar/Makefile @@ -1,95 +1,96 @@ PORTNAME= polybar DISTVERSION= 3.7.2 +PORTREVISION= 1 CATEGORIES= x11 MASTER_SITES= https://github.com/polybar/polybar/releases/download/${DISTVERSION}/ MAINTAINER= jbo@FreeBSD.org COMMENT= Fast and easy-to-use status bar WWW= https://github.com/polybar/polybar LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= xcb-proto>=1.9:x11/xcb-proto LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libinotify.so:devel/libinotify \ libuv.so:devel/libuv \ libxcb-ewmh.so:x11/xcb-util-wm \ libxcb-icccm.so:x11/xcb-util-wm \ libxcb-image.so:x11/xcb-util-image \ libxcb-util.so:x11/xcb-util \ libxcb-xrm.so:x11/xcb-util-xrm # compiler:c++11-lang is needed for powerpc64 USES= cmake compiler:c++11-lang gnome localbase:ldflags \ pkgconfig python:build xorg USE_GNOME= cairo USE_XORG= xcb # Needs libnl to work. Disabling it completely. CMAKE_OFF= ENABLE_NETWORK BUILD_DOC OPTIONS_DEFINE= ALSA CURSOR DEBUG GITHUB I3 IPC MPD \ PULSEAUDIO TESTS XKEYBOARD OPTIONS_DEFAULT= CURSOR GITHUB I3 IPC MPD PULSEAUDIO XKEYBOARD OPTIONS_SUB= yes ALSA_DESC= Shows volume and mute state for Alsa CURSOR_DESC= Required for click and scroll settings GITHUB_DESC= Shows the unread notification count I3_DESC= Uses the i3 IPC to display information IPC_DESC= Built-in IPC support MPD_DESC= Support for controlling MPD TESTS_DESC= Build testsuite XKEYBOARD_DESC= Shows the current layout and active indicators ALSA_CMAKE_BOOL= ENABLE_ALSA ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib CURSOR_CMAKE_BOOL= WITH_XCURSOR CURSOR_LIB_DEPENDS= libxcb-cursor.so:x11/xcb-util-cursor DEBUG_CMAKE_BOOL= DEBUG_LOGGER GITHUB_CMAKE_BOOL= ENABLE_CURL GITHUB_LIB_DEPENDS= libcurl.so:ftp/curl I3_BUILD_DEPENDS= ${LOCALBASE}/include/i3/ipc.h:x11-wm/i3 I3_CMAKE_BOOL= ENABLE_I3 I3_LIB_DEPENDS= libjsoncpp.so:devel/jsoncpp IPC_CMAKE_BOOL= BUILD_IPC_MSG MPD_CMAKE_BOOL= ENABLE_MPD MPD_LIB_DEPENDS= libmpdclient.so:audio/libmpdclient PULSEAUDIO_CMAKE_BOOL= ENABLE_PULSEAUDIO PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio # fail while building on poudriere because it needs network access # during the building process to download googletest on-the-fly. TESTS_BUILD_DEPENDS= git>=0:devel/git TESTS_CMAKE_BOOL= BUILD_TESTS XKEYBOARD_CMAKE_BOOL= ENABLE_XKEYBOARD XKEYBOARD_LIB_DEPENDS= libxcb-xkb.so:x11/libxcb ETCFIX = include/utils/command.hpp \ contrib/bash/polybar \ contrib/zsh/_polybar \ doc/man/polybar.1.rst \ doc/man/polybar.5.rst \ CHANGELOG.md post-patch: .for f in ${ETCFIX} @${REINPLACE_CMD} -e 's|/etc|${PREFIX}/etc|g' ${WRKSRC}/${f} .endfor do-test-TESTS-on: cd ${TEST_WRKSRC} && ${SETENV} BUILD_TESTS=ON \ ${SH} ${WRKSRC}/common/travis/tests.sh .include diff --git a/x11/waybar/Makefile b/x11/waybar/Makefile index 018f85209fd2..d631ab58518e 100644 --- a/x11/waybar/Makefile +++ b/x11/waybar/Makefile @@ -1,192 +1,193 @@ PORTNAME= waybar DISTVERSION= 0.10.4 +PORTREVISION= 1 CATEGORIES= x11 wayland PKGNAMESUFFIX= ${FLAVOR:N${FLAVORS:[1]}:C/.+/-${FLAVOR}/} MAINTAINER= ports@FreeBSD.org COMMENT= Highly customizable Wayland bar for Sway and wlroots-based compositors WWW= https://github.com/Alexays/Waybar LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= wayland-protocols>0:graphics/wayland-protocols LIB_DEPENDS= libdate-tz.so:devel/date \ libinotify.so:devel/libinotify \ libjsoncpp.so:devel/jsoncpp \ libfmt.so:devel/libfmt \ libspdlog.so:devel/spdlog \ libwayland-client.so:graphics/wayland \ libgtk-layer-shell.so:x11-toolkits/gtk-layer-shell \ libxkbregistry.so:x11/libxkbcommon TEST_DEPENDS= catch>0:devel/catch FLAVORS= default nopulse CONFLICTS_INSTALL= ${PORTNAME}* USES= compiler:c++20-lang gnome meson pkgconfig USE_GITHUB= yes USE_GNOME= gtkmm30 GH_ACCOUNT= Alexays GH_PROJECT= Waybar MESON_ARGS= ${libnl systemd tests:L:C/.*/-D&=disabled/} PLIST_FILES= bin/${PORTNAME} \ etc/xdg/${PORTNAME}/config.jsonc \ etc/xdg/${PORTNAME}/style.css # XXX Add pkg-config support to devel/date .if exists(${.CURDIR}/files/date.pc.in) CONFIGURE_ENV+= PKG_CONFIG_PATH="${WRKDIR}" SUB_FILES+= date.pc .endif OPTIONS_DEFINE= CAVA DBUS EVDEV ICONSFONT JACK MANPAGES MPD MPRIS PIPEWIRE PULSEAUDIO SNDIO UDEV UPOWER WIREPLUMBER OPTIONS_DEFAULT= CAVA DBUS EVDEV ICONSFONT JACK MANPAGES MPD MPRIS PIPEWIRE PULSEAUDIO SNDIO UDEV UPOWER WIREPLUMBER OPTIONS_EXCLUDE+= CAVA # https://github.com/karlstav/cava/issues/487 .if ${FLAVOR:U:M*nopulse} OPTIONS_EXCLUDE+= PULSEAUDIO .endif CAVA_LIB_DEPENDS= libcava.so:audio/cava CAVA_MESON_ENABLED= cava CAVA_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-cava.5.gz DBUS_LIB_DEPENDS= libdbusmenu-gtk3.so:devel/libdbusmenu DBUS_MESON_ENABLED= dbusmenu-gtk DBUS_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-tray.5.gz EVDEV_DESC= Keyboard state via libevdev EVDEV_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto EVDEV_LIB_DEPENDS= libevdev.so:devel/libevdev \ libinput.so:x11/libinput EVDEV_MESON_ENABLED= libevdev libinput EVDEV_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-keyboard-state.5.gz ICONSFONT_DESC= Install Font Awesome to properly render icons ICONSFONT_RUN_DEPENDS= font-awesome>0:x11-fonts/font-awesome JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_MESON_ENABLED= jack JACK_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-jack.5.gz MANPAGES_BUILD_DEPENDS= scdoc:textproc/scdoc MANPAGES_MESON_ENABLED= man-pages MANPAGES_PLIST_FILES= share/man/man5/${PORTNAME}-battery.5.gz \ share/man/man5/${PORTNAME}-cffi.5.gz \ share/man/man5/${PORTNAME}-clock.5.gz \ share/man/man5/${PORTNAME}-cpu.5.gz \ share/man/man5/${PORTNAME}-custom.5.gz \ share/man/man5/${PORTNAME}-disk.5.gz \ share/man/man5/${PORTNAME}-dwl-tags.5.gz \ share/man/man5/${PORTNAME}-dwl-window.5.gz \ share/man/man5/${PORTNAME}-gamemode.5.gz \ share/man/man5/${PORTNAME}-hyprland-language.5.gz \ share/man/man5/${PORTNAME}-hyprland-submap.5.gz \ share/man/man5/${PORTNAME}-hyprland-window.5.gz \ share/man/man5/${PORTNAME}-hyprland-workspaces.5.gz \ share/man/man5/${PORTNAME}-idle-inhibitor.5.gz \ share/man/man5/${PORTNAME}-image.5.gz \ share/man/man5/${PORTNAME}-inhibitor.5.gz \ share/man/man5/${PORTNAME}-memory.5.gz \ share/man/man5/${PORTNAME}-menu.5.gz \ share/man/man5/${PORTNAME}-river-layout.5.gz \ share/man/man5/${PORTNAME}-river-mode.5.gz \ share/man/man5/${PORTNAME}-river-tags.5.gz \ share/man/man5/${PORTNAME}-river-window.5.gz \ share/man/man5/${PORTNAME}-states.5.gz \ share/man/man5/${PORTNAME}-styles.5.gz \ share/man/man5/${PORTNAME}-sway-language.5.gz \ share/man/man5/${PORTNAME}-sway-mode.5.gz \ share/man/man5/${PORTNAME}-sway-scratchpad.5.gz \ share/man/man5/${PORTNAME}-sway-window.5.gz \ share/man/man5/${PORTNAME}-sway-workspaces.5.gz \ share/man/man5/${PORTNAME}-temperature.5.gz \ share/man/man5/${PORTNAME}-wlr-taskbar.5.gz \ share/man/man5/${PORTNAME}.5.gz \ ${NULL} MPD_DESC= Music Player Daemon support MPD_LIB_DEPENDS= libmpdclient.so:audio/libmpdclient MPD_MESON_ENABLED= mpd MPD_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-mpd.5.gz MPRIS_DESC= Media Player Remote Interfacing Specification via playerctl MPRIS_LIB_DEPENDS= libplayerctl.so:multimedia/playerctl MPRIS_MESON_ENABLED= mpris MPRIS_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-mpris.5.gz PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_MESON_ENABLED= pipewire PIPEWIRE_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-privacy.5.gz PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_MESON_ENABLED= pulseaudio PULSEAUDIO_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-pulseaudio-slider.5.gz \ MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-pulseaudio.5.gz SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_USES= localbase:ldflags SNDIO_MESON_ENABLED= sndio SNDIO_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-sndio.5.gz UDEV_DESC= Monitor backlight level via libudev UDEV_LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \ libudev.so:devel/libudev-devd UDEV_MESON_ENABLED= libudev UDEV_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-backlight-slider.5.gz \ MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-backlight.5.gz UPOWER_DESC= Monitor battery capacity via UPower UPOWER_LIB_DEPENDS= libupower-glib.so:sysutils/upower UPOWER_MESON_ENABLED= upower_glib UPOWER_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-upower.5.gz WIREPLUMBER_LIB_DEPENDS= libwireplumber-0.5.so:multimedia/wireplumber WIREPLUMBER_MESON_ENABLED= wireplumber WIREPLUMBER_VARS= MANPAGES_PLIST_FILES+=share/man/man5/${PORTNAME}-wireplumber.5.gz post-patch: # Extract (snapshot) version from the port instead of meson.build @${REINPLACE_CMD} -i .nogit -e 's/git.found()/false/' \ -e '/project_version/s/@0@/${DISTVERSIONFULL}/' \ ${WRKSRC}/meson.build # https://github.com/ConsoleKit2/ConsoleKit2/issues/150 @${REINPLACE_CMD} -e 's,/login1,/ConsoleKit/Manager,' \ -e 's,login1\([".]\),ConsoleKit\1,g' \ ${WRKSRC}/src/modules/gamemode.cpp \ ${WRKSRC}/src/modules/inhibitor.cpp \ ${WRKSRC}/src/modules/upower.cpp \ ${WRKSRC}/src/util/backlight_backend.cpp \ ${WRKSRC}/src/util/prepare_for_sleep.cpp # Respect PREFIX for icons @${REINPLACE_CMD} 's,/usr/share,${DATADIR:H},' \ ${WRKSRC}/src/modules/wlr/taskbar.cpp pre-test: @if [ ! -e ${WRKDIR}/.meson_build_tests ]; then \ ${RM} ${CONFIGURE_COOKIE} ${BUILD_COOKIE}; \ ${MAKE} -C${.CURDIR} build MESON_ARGS="${MESON_ARGS} --reconfigure -Dtests=enabled"; \ ${TOUCH} ${WRKDIR}/.meson_build_tests; \ fi # XXX Drop after FreeBSD 13.3 EOL around 2025-07-01 (don't forget distinfo) .if ${CXX} == c++ && exists(/usr/include/c++/v1/__chrono/concepts.h) && \ !exists(/usr/include/c++/v1/__chrono/tzdb.h) || make(makesum) || make(fetch) USES+= cmake:indirect CMAKE_ARGS= -B ${WRKDIR}/libcxx_build -S ${WRKSRC_libcxx}/libcxx CMAKE_OFF= LIBCXX_INCLUDE_BENCHMARKS CMAKE_INSTALL_PREFIX= ${WRKDIR}/libcxx_prefix # XXX Move into separate port and standardize via USES GH_TUPLE+= llvm:llvm-project:llvmorg-16.0.1:libcxx CXXFLAGS+= -nostdinc++ -isystem${WRKDIR}/libcxx_prefix/include/c++/v1 # Don't link against new libc++ as it's not necessary #LDFLAGS+= -nostdlib++ -L${WRKDIR}/libcxx_prefix/lib -l:libc++.a -lcxxrt pre-configure: bundled-libcxx bundled-libcxx: @${SETENVI} ${WRK_ENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} @${DO_MAKE_BUILD:NDESTDIR*} install -C ${WRKDIR}/libcxx_build .endif # exists(/usr/include/c++/v1/__chrono/concepts.h) .include