Index: head/devel/efl/Makefile =================================================================== --- head/devel/efl/Makefile (revision 482188) +++ head/devel/efl/Makefile (revision 482189) @@ -1,191 +1,191 @@ # Created by: Grzegorz Blach # $FreeBSD$ PORTNAME= efl DISTVERSION= 1.20.7 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel enlightenment MASTER_SITES= http://download.enlightenment.org/rel/libs/${PORTNAME}/ DIST_SUBDIR= enlightenment MAINTAINER= enlightenment@FreeBSD.org COMMENT= Enlightenment Foundation Libraries LICENSE= BSD2CLAUSE LGPL21 LICENSE_COMB= multi LIB_DEPENDS= libgif.so:graphics/giflib \ libpng.so:graphics/png \ libtiff.so:graphics/tiff \ libfreetype.so:print/freetype2 \ libfontconfig.so:x11-fonts/fontconfig \ libdbus-1.so:devel/dbus \ libsndfile.so:audio/libsndfile \ libunwind.so:devel/libunwind # lib/libeio.so.1 CONFLICTS_INSTALL= libeio GNU_CONFIGURE= yes USES= autoreconf compiler:c++14-lang gettext-tools gmake iconv jpeg \ libtool pathfix pkgconfig python:2.7,run shared-mime-info \ shebangfix tar:xz SHEBANG_FILES= src/scripts/eina/eina-bench-cmp USE_XORG= x11 xcb xcursor xcomposite xdamage xext xfixes xi xinerama xp \ xrandr xrender xtst xscrnsaver USE_LDCONFIG= yes CONFIGURE_ARGS= --with-profile=release \ --enable-multisense \ --disable-systemd \ --disable-elput \ --disable-cserve \ --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-abb CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib INSTALLS_ICONS= yes PLIST_SUB= BRANCHVERSION=${PORTVERSION:R} PORTVERSION=${PORTVERSION} OPTIONS_DEFINE= AVAHI FRIBIDI HARFBUZZ NLS PHYSICS PULSEAUDIO SSL WAYLAND WAYLAND_EGL OPTIONS_GROUP= EMOTION INPUT LOADER OPTIONS_GROUP_EMOTION= GSTREAMER LIBXINE V4L VLC OPTIONS_GROUP_INPUT= IBUS SCIM OPTIONS_GROUP_LOADER= OPENJPEG PDF PS RAW SVG WEBP XCF OPTIONS_RADIO= ENGINE OPTIONS_RADIO_ENGINE= OPENGL OPENGLES SDL OPTIONS_DEFAULT= FRIBIDI HARFBUZZ PHYSICS PULSEAUDIO SSL GSTREAMER PDF SVG OPENGL OPTIONS_SUB= yes HARFBUZZ_DESC= OpenType text shaping engine PHYSICS_DESC= Physics effects WAYLAND_DESC= Wayland backend support WAYLAND_EGL_DESC= Wayland-EGL backend support VLC_DESC= Multimedia support by VLC IBUS_DESC= Intelligent Input Bus SCIM_DESC= Smart Common Input Method XCF_DESC= Gimp image format support OPENGLES_DESC= 2D/3D rendering support via OpenGL ES AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app AVAHI_CONFIGURE_ENABLE= avahi FRIBIDI_LIB_DEPENDS= libfribidi.so:converters/fribidi FRIBIDI_CONFIGURE_ENABLE= fribidi HARFBUZZ_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz HARFBUZZ_CONFIGURE_ENABLE= harfbuzz NLS_USES= gettext-runtime NLS_CONFIGURE_ENABLE= nls PHYSICS_LIB_DEPENDS= libBulletDynamics.so:devel/bullet PHYSICS_CONFIGURE_ENABLE= physics PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_ENABLE= pulseaudio WAYLAND_BROKEN= WAYLAND option is broken: https://phab.enlightenment.org/T7116 WAYLAND_LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \ libxkbcommon.so:x11/libxkbcommon \ libwayland-client.so:graphics/wayland \ libwayland-cursor.so:graphics/wayland WAYLAND_CFLAGS= -I${LOCALBASE}/include/libepoll-shim WAYLAND_LDFLAGS= -lepoll-shim WAYLAND_CONFIGURE_ENABLE= wayland -WAYLAND_EGL_LIB_DEPENDS= libwayland-egl.so:graphics/mesa-libs +WAYLAND_EGL_LIB_DEPENDS= libwayland-egl.so:graphics/wayland WAYLAND_EGL_CONFIGURE_ENABLE= egl WAYLANG_EGL_USE= GL=egl WAYLAND_EGL_IMPLIES= WAYLAND OPENGLES GSTREAMER_USE= GSTREAMER1=core GSTREAMER_CONFIGURE_ENABLE= gstreamer1 LIBXINE_LIB_DEPENDS= libxine.so:multimedia/libxine LIBXINE_CONFIGURE_ENABLE= xine V4L_BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat V4L_CONFIGURE_ENABLE= v4l2 VLC_LIB_DEPENDS= libvlc.so:multimedia/vlc VLC_CONFIGURE_WITH= generic_vlc IBUS_LIB_DEPENDS= libibus-1.0.so:textproc/ibus SCIM_LIB_DEPENDS= libscim-1.0.so:textproc/scim SCIM_CONFIGURE_ENABLE= scim OPENJPEG_LIB_DEPENDS= libopenjpeg.so:graphics/openjpeg15 OPENJPEG_CONFIGURE_ENABLE= image-loader-jp2k PDF_LIB_DEPENDS= libpoppler.so:graphics/poppler PDF_CONFIGURE_ENABLE= poppler PS_LIB_DEPENDS= libspectre.so:print/libspectre PS_CONFIGURE_ENABLE= spectre RAW_LIB_DEPENDS= libraw.so:graphics/libraw RAW_CONFIGURE_ENABLE= libraw SVG_USE= GNOME=cairo GNOME=librsvg2 SVG_CONFIGURE_ENABLE= librsvg WEBP_LIB_DEPENDS= libwebp.so:graphics/webp WEBP_CONFIGURE_ENABLE= image-loader-webp XCF_CONFIGURE_ENABLE= xcf OPENGL_USE= GL=gl OPENGLES_USE= GL=glesv2 OPENGLES_CONFIGURE_ON= --with-opengl=es --enable-egl SDL_USE= SDL=sdl2 SDL_CONFIGURE_ENABLE= sdl .include .if ${PORT_OPTIONS:MPULSEAUDIO} PLIST_SUB+= AUDIO="" .else CONFIGURE_ARGS+= --disable-pulseaudio PLIST_SUB+= AUDIO="@comment " .endif .if ${PORT_OPTIONS:MSSL} USES+= ssl .else CONFIGURE_ARGS+= --with-crypto=none .endif .if ${PORT_OPTIONS:MIBUS} CONFIGURE_ARGS+= --with-glib=yes .else CONFIGURE_ARGS+= --disable-ibus --with-glib=no .endif .if empty(PORT_OPTIONS:MOPENGL) && empty(PORT_OPTIONS:MOPENGLES) CONFIGURE_ARGS+= --with-opengl=none .endif .if ${ARCH} == "powerpc" || ${ARCH} == "sparc64" USES+= lua CONFIGURE_ARGS+= --enable-lua-old PLIST_SUB+= ELUA="@comment " .else LIB_DEPENDS+= libluajit-5.1.so:lang/luajit PLIST_SUB+= ELUA="" .endif post-install: @${RM} -r ${STAGEDIR}${PREFIX}/share/gdb @for i in `${FIND} ${STAGEDIR}${PREFIX}/bin ${STAGEDIR}${PREFIX}/lib -type f`; do \ if ${FILE} $$i | ${GREP} -q "not stripped"; then ${STRIP_CMD} $$i; fi; \ done # workaround for https://phab.enlightenment.org/T6783 : it leaves an empty directory @if [ -d ${STAGEDIR}${PREFIX}/lib/evas/utils -a -z "$$(ls -A ${STAGEDIR}${PREFIX}/lib/evas/utils)" ]; then \ ${RMDIR} ${STAGEDIR}${PREFIX}/lib/evas/utils; \ fi .include Index: head/graphics/glfw/Makefile =================================================================== --- head/graphics/glfw/Makefile (revision 482188) +++ head/graphics/glfw/Makefile (revision 482189) @@ -1,55 +1,54 @@ # Created by: Rusmir Dusko # $FreeBSD$ PORTNAME= glfw PORTVERSION= 3.2.1 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= graphics MASTER_SITES= SF MAINTAINER= neel@neelc.org COMMENT= Portable framework for OpenGL development LICENSE= ZLIB LICENSE_FILE= ${WRKSRC}/COPYING.txt USES= cmake localbase zip USE_GL= glu USE_LDCONFIG= yes CMAKE_ON= BUILD_SHARED_LIBS PORTDOCS= * PORTEXAMPLES= * OPTIONS_DEFINE= DOCS EXAMPLES WAYLAND OPTIONS_EXCLUDE_FreeBSD_10= WAYLAND # needs dev/evdev/input.h WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols WAYLAND_CMAKE_BOOL= GLFW_USE_WAYLAND -WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ - libwayland-egl.so:graphics/mesa-libs \ +WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_USES= kde:5 pkgconfig WAYLAND_USE= KDE=ecm WAYLAND_USE_OFF= XORG=x11,xcursor,xinerama,xrandr,xxf86vm do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR}/docs/html/search ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/html/search/* \ ${STAGEDIR}${DOCSDIR}/docs/html/search cd ${WRKSRC}/docs/html && ${INSTALL_DATA} *.html *.png *.css *.js \ ${STAGEDIR}${DOCSDIR}/docs/html do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/tests cd ${WRKSRC}/examples && ${INSTALL_PROGRAM} \ boing gears heightmap particles simple splitview wave \ ${STAGEDIR}${EXAMPLESDIR} cd ${WRKSRC}/tests && ${INSTALL_PROGRAM} \ clipboard cursor empty events gamma glfwinfo iconify \ joysticks monitors msaa reopen sharing tearing \ threads title windows \ ${STAGEDIR}${EXAMPLESDIR}/tests .include Index: head/graphics/mesa-libs/Makefile =================================================================== --- head/graphics/mesa-libs/Makefile (revision 482188) +++ head/graphics/mesa-libs/Makefile (revision 482189) @@ -1,69 +1,70 @@ # Created by: Eric Anholt # $FreeBSD$ PORTNAME= mesa-libs PORTVERSION= ${MESAVERSION} +PORTREVISION= 1 CATEGORIES= graphics COMMENT= OpenGL libraries that support GLX and EGL clients USE_XORG= xorgproto x11 xcb xdamage xext \ xfixes xshmfence xxf86vm OPTIONS_DEFINE= WAYLAND OPTIONS_SUB= yes WAYLAND_DESC= Enable support for the Wayland platform in EGL WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ libwayland-server.so:graphics/wayland .include .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common" CONFIGURE_ARGS+= --with-dri-drivers="" --with-gallium-drivers="" # libEGL needs gallium enabled which depends on llvm .if "${MESA_LLVM_VER}" != "" .if ${PORT_OPTIONS:MWAYLAND} CONFIGURE_ARGS+= --with-platforms=x11,drm,wayland .else CONFIGURE_ARGS+= --with-platforms=x11,drm .endif PLIST_SUB+= EGL="" .else CONFIGURE_ARGS+= --disable-egl PLIST_SUB+= EGL="@comment " .if ${PORT_OPTIONS:MWAYLAND} IGNORE= option WAYLAND is only valid on platforms with LLVM .endif .endif MESA_BUILD_WRKSRC= src/mapi src/util MESA_INSTALL_WRKSRC= src/mapi .if ${PORT_OPTIONS:MWAYLAND} MESA_BUILD_WRKSRC+= src/egl/wayland/wayland-drm src/egl/wayland/wayland-egl MESA_INSTALL_WRKSRC+= src/egl/wayland/wayland-egl .endif MESA_BUILD_WRKSRC+= src/gbm src/glx MESA_INSTALL_WRKSRC+= src/gbm src/glx .if "${MESA_LLVM_VER}" != "" MESA_BUILD_WRKSRC+= src/egl MESA_INSTALL_WRKSRC+= src/egl .endif .if ${ARCH} == "i386" # PR230239 Fix the build for i386 when WITH_LLD_IS_LD is set LDFLAGS+=-Wl,-z,notext .endif .include "${MASTERDIR}/Makefile.targets" post-install: @cd ${WRKSRC}/src && ${SETENV} DESTDIR=${STAGEDIR} \ ${MAKE_CMD} install-pkgconfigDATA install-glHEADERS install-glxHEADERS .include Index: head/graphics/mesa-libs/pkg-plist =================================================================== --- head/graphics/mesa-libs/pkg-plist (revision 482188) +++ head/graphics/mesa-libs/pkg-plist (revision 482189) @@ -1,46 +1,46 @@ @comment etc/drirc %%EGL%%include/EGL/egl.h %%EGL%%include/EGL/eglext.h %%EGL%%include/EGL/eglextchromium.h %%EGL%%include/EGL/eglmesaext.h %%EGL%%include/EGL/eglplatform.h include/GL/gl.h include/GL/gl_mangle.h include/GL/glcorearb.h include/GL/glext.h include/GL/glx.h include/GL/glx_mangle.h include/GL/glxext.h include/GLES2/gl2.h include/GLES2/gl2ext.h include/GLES2/gl2platform.h include/GLES3/gl3.h include/GLES3/gl31.h include/GLES3/gl32.h include/GLES3/gl3ext.h include/GLES3/gl3platform.h %%EGL%%include/KHR/khrplatform.h include/gbm.h %%EGL%%lib/libEGL.so %%EGL%%lib/libEGL.so.1 %%EGL%%lib/libEGL.so.1.0.0 lib/libGL.so lib/libGL.so.1 lib/libGL.so.1.2.0 lib/libGLESv2.so lib/libGLESv2.so.2 lib/libGLESv2.so.2.0.0 lib/libgbm.so lib/libgbm.so.1 lib/libgbm.so.1.0.0 lib/libglapi.so lib/libglapi.so.0 lib/libglapi.so.0.0.0 -%%WAYLAND%%lib/libwayland-egl.so -%%WAYLAND%%lib/libwayland-egl.so.1 -%%WAYLAND%%lib/libwayland-egl.so.1.0.0 +@comment %%WAYLAND%%lib/libwayland-egl.so +@comment %%WAYLAND%%lib/libwayland-egl.so.1 +@comment %%WAYLAND%%lib/libwayland-egl.so.1.0.0 %%EGL%%libdata/pkgconfig/egl.pc libdata/pkgconfig/gbm.pc libdata/pkgconfig/gl.pc libdata/pkgconfig/glesv2.pc -%%WAYLAND%%libdata/pkgconfig/wayland-egl.pc +@comment %%WAYLAND%%libdata/pkgconfig/wayland-egl.pc Index: head/graphics/qt5-wayland/Makefile =================================================================== --- head/graphics/qt5-wayland/Makefile (revision 482188) +++ head/graphics/qt5-wayland/Makefile (revision 482189) @@ -1,30 +1,26 @@ # $FreeBSD$ PORTNAME= wayland DISTVERSION= ${QT5_VERSION} +PORTREVISION= 1 CATEGORIES= graphics PKGNAMEPREFIX= qt5- MAINTAINER= kde@FreeBSD.org COMMENT= Qt5 wrapper for Wayland LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ - libwayland-client.so:graphics/wayland \ + libwayland-egl.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon USES= pkgconfig qmake:norecursive qt-dist:5,wayland USE_GL= egl gl USE_GNOME= glib20 USE_QT= core dbus gui qml quick \ buildtools_build qmake_build USE_XORG= x11 xcomposite USE_LDCONFIG= ${PREFIX}/${QT_LIBDIR_REL} - -OPTIONS_DEFINE= WAYLAND -WAYLAND_DESC= Requires graphics/mesa-libs with WAYLAND on -WAYLAND_IGNORE_OFF= Cannot be built without wayland support -WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/mesa-libs .include Index: head/graphics/vulkan-loader/Makefile =================================================================== --- head/graphics/vulkan-loader/Makefile (revision 482188) +++ head/graphics/vulkan-loader/Makefile (revision 482189) @@ -1,47 +1,48 @@ # $FreeBSD$ PORTNAME= vulkan-loader DISTVERSIONPREFIX=sdk- DISTVERSION= 1.1.82.0 +PORTREVISION= 1 CATEGORIES= graphics devel MAINTAINER= greg@unrelenting.technology COMMENT= Driver loader for the Vulkan graphics API LICENSE= APACHE20 BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers USES= cmake:outsource compiler:c++11-lib pkgconfig python:3.4+,build USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= KhronosGroup GH_PROJECT= Vulkan-Loader CMAKE_ON= CMAKE_SKIP_RPATH CMAKE_OFF= BUILD_TESTS BUILD_WSI_MIR_SUPPORT OPTIONS_DEFINE= XLIB XCB WAYLAND OPTIONS_DEFAULT=XLIB XCB XLIB_DESC= Build Xlib WSI (Window System Integration) support XCB_DESC= Build XCB WSI (Window System Integration) support WAYLAND_DESC= Build Wayland WSI (Window System Integration) support XLIB_CMAKE_BOOL= BUILD_WSI_XLIB_SUPPORT XLIB_LIB_DEPENDS= libX11.so:x11/libX11 \ libXrandr.so:x11/libXrandr XCB_CMAKE_BOOL= BUILD_WSI_XCB_SUPPORT XCB_LIB_DEPENDS= libX11-xcb.so:x11/libX11 \ libxcb.so:x11/libxcb WAYLAND_CMAKE_BOOL= BUILD_WSI_WAYLAND_SUPPORT -WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/mesa-libs +WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland post-patch: # Non-x86 targets use C code, so don't abort without GNU as (e.g., on aarch64) .if !exists(/usr/bin/as) && ${MACHINE_ARCH} != i386 && ${MACHINE_ARCH} != amd64 @${REINPLACE_CMD} 's/-ATT//' ${WRKSRC}/loader/CMakeLists.txt .endif .include Index: head/graphics/wayland/Makefile =================================================================== --- head/graphics/wayland/Makefile (revision 482188) +++ head/graphics/wayland/Makefile (revision 482189) @@ -1,35 +1,31 @@ # Created by: kwm@FreeBSD.org # $FreeBSD$ PORTNAME= wayland -PORTVERSION= 1.14.0 +PORTVERSION= 1.16.0 CATEGORIES= graphics wayland MASTER_SITES= http://wayland.freedesktop.org/releases/ MAINTAINER= x11@FreeBSD.org COMMENT= Wayland composite "server" LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN_mips= fails to compile: tests/test-runner.c:349: undefined reference to prctl -BROKEN_mips64= fails to compile: tests/test-runner.c:349: undefined reference to prctl -BROKEN_powerpc64= fails to compile: tests/test-runner.c:349: undefined reference to prctl - LIB_DEPENDS= libexpat.so:textproc/expat2 \ libffi.so:devel/libffi \ libepoll-shim.so:devel/libepoll-shim CFLAGS+= "-I${LOCALBASE}/include/libepoll-shim" WITH_DEBUG= 1 -USES= autoreconf gmake libtool localbase pathfix pkgconfig tar:xz +USES= autoreconf gnome gmake libtool localbase pathfix pkgconfig tar:xz USE_GNOME= libxslt:build USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --disable-documentation CONFIGURE_ENV= ac_cv_func_posix_fallocate=no # EINVAL for many FS on 12.0 INSTALL_TARGET= install-strip .include Index: head/graphics/wayland/distinfo =================================================================== --- head/graphics/wayland/distinfo (revision 482188) +++ head/graphics/wayland/distinfo (revision 482189) @@ -1,3 +1,3 @@ -TIMESTAMP = 1507715269 -SHA256 (wayland-1.14.0.tar.xz) = ed80cabc0961a759a42092e2c39aabfc1ec9a13c86c98bbe2b812f008da27ab8 -SIZE (wayland-1.14.0.tar.xz) = 413960 +TIMESTAMP = 1539381179 +SHA256 (wayland-1.16.0.tar.xz) = 4e72c2b56109ccfb6610d776e465f4ca0af2280c9c2f7d5cc23f0ed2548752f5 +SIZE (wayland-1.16.0.tar.xz) = 435216 Index: head/graphics/wayland/files/patch-Makefile.am =================================================================== --- head/graphics/wayland/files/patch-Makefile.am (revision 482188) +++ head/graphics/wayland/files/patch-Makefile.am (revision 482189) @@ -1,29 +1,29 @@ ---- Makefile.am.orig 2017-05-05 11:54:01 UTC +--- Makefile.am.orig 2018-04-10 14:53:32 UTC +++ Makefile.am -@@ -73,7 +73,7 @@ nodist_include_HEADERS = \ +@@ -71,7 +71,7 @@ nodist_include_HEADERS = \ protocol/wayland-client-protocol.h libwayland_server_la_CFLAGS = $(FFI_CFLAGS) $(AM_CFLAGS) -pthread -libwayland_server_la_LIBADD = $(FFI_LIBS) libwayland-private.la libwayland-util.la -lrt -lm +libwayland_server_la_LIBADD = $(FFI_LIBS) $(EPOLLSHIM_LIBS) libwayland-private.la libwayland-util.la -lrt -lm libwayland_server_la_LDFLAGS = -version-info 1:0:1 libwayland_server_la_SOURCES = \ src/wayland-server.c \ -@@ -85,7 +85,7 @@ nodist_libwayland_server_la_SOURCES = \ +@@ -83,7 +83,7 @@ nodist_libwayland_server_la_SOURCES = \ protocol/wayland-protocol.c libwayland_client_la_CFLAGS = $(FFI_CFLAGS) $(AM_CFLAGS) -pthread -libwayland_client_la_LIBADD = $(FFI_LIBS) libwayland-private.la libwayland-util.la -lrt -lm +libwayland_client_la_LIBADD = $(FFI_LIBS) $(EPOLLSHIM_LIBS) libwayland-private.la libwayland-util.la -lrt -lm libwayland_client_la_LDFLAGS = -version-info 3:0:3 libwayland_client_la_SOURCES = \ src/wayland-client.c -@@ -198,7 +198,7 @@ libtest_runner_la_LIBADD = \ +@@ -223,7 +223,7 @@ libtest_runner_la_LIBADD = \ libwayland-util.la \ libwayland-client.la \ libwayland-server.la \ - -lrt -ldl $(FFI_LIBS) + -lrt $(DL_LIBS) $(FFI_LIBS) $(EPOLLSHIM_LIBS) array_test_SOURCES = tests/array-test.c Index: head/graphics/wayland/files/patch-configure.ac =================================================================== --- head/graphics/wayland/files/patch-configure.ac (revision 482188) +++ head/graphics/wayland/files/patch-configure.ac (revision 482189) @@ -1,52 +1,51 @@ ---- configure.ac.orig 2017-08-08 18:20:52 UTC +--- configure.ac.orig 2018-08-24 18:04:36 UTC +++ configure.ac -@@ -63,6 +63,25 @@ AC_SUBST(GCC_CFLAGS) +@@ -65,6 +65,25 @@ AC_SUBST(GCC_CFLAGS) + AC_CHECK_HEADERS([sys/prctl.h]) + AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate prctl]) - AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate]) - +AC_CHECK_HEADERS([sys/signalfd.h sys/timerfd.h]) + +# Use epoll on Linux and epoll-shim (kqueue) on BSD +AC_CHECK_HEADERS([sys/epoll.h]) + +# Credential support on FreeBSD +AC_CHECK_HEADERS([sys/ucred.h]) + +# dlopen() +AC_CHECK_LIB([dl], [dlsym], [DL_LIBS=-ldl]) +AC_SUBST([DL_LIBS]) + +# Defines __FreeBSD__ if we're on FreeBSD +AC_CHECK_HEADERS([sys/param.h]) + +# waitid() and signal.h are needed for the test suite. +AC_CHECK_FUNCS([waitid]) +AC_CHECK_HEADERS([signal.h]) + AC_ARG_ENABLE([libraries], [AC_HELP_STRING([--disable-libraries], [Disable compilation of wayland libraries])], -@@ -98,17 +117,21 @@ AC_SUBST([ICONDIR]) +@@ -100,16 +119,20 @@ AC_SUBST([ICONDIR]) if test "x$enable_libraries" = "xyes"; then PKG_CHECK_MODULES(FFI, [libffi]) +dnl convert SFD_CLOEXEC and TFD_CLOEXEC to warning while figuring out how to do this. AC_CHECK_DECL(SFD_CLOEXEC,[], - [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland libraries")], + [AC_MSG_WARN("SFD_CLOEXEC is needed to compile wayland libraries")], [[#include ]]) AC_CHECK_DECL(TFD_CLOEXEC,[], - [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland libraries")], + [AC_MSG_WARN("TFD_CLOEXEC is needed to compile wayland libraries")], [[#include ]]) AC_CHECK_DECL(CLOCK_MONOTONIC,[], [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland libraries")], [[#include ]]) - AC_CHECK_HEADERS([execinfo.h]) fi + +EPOLLSHIM_LIBS="-lepoll-shim" +AC_SUBST(EPOLLSHIM_LIBS) - PKG_CHECK_MODULES(EXPAT, [expat], [], - [AC_CHECK_HEADERS(expat.h, [], + PKG_CHECK_MODULES(EXPAT, [expat]) + Index: head/graphics/wayland/files/patch-src_wayland-server.c =================================================================== --- head/graphics/wayland/files/patch-src_wayland-server.c (revision 482188) +++ head/graphics/wayland/files/patch-src_wayland-server.c (revision 482189) @@ -1,82 +1,96 @@ ---- src/wayland-server.c.orig 2017-08-08 18:20:52 UTC +--- src/wayland-server.c.orig 2018-04-09 17:19:26 UTC +++ src/wayland-server.c @@ -25,6 +25,8 @@ #define _GNU_SOURCE +#include "../config.h" + #include #include #include @@ -43,6 +45,11 @@ #include #include +#ifdef HAVE_SYS_UCRED_H +#include +#include +#endif + #include "wayland-util.h" #include "wayland-private.h" #include "wayland-server.h" @@ -77,7 +84,13 @@ struct wl_client { struct wl_list link; struct wl_map objects; struct wl_priv_signal destroy_signal; +#ifdef HAVE_SYS_UCRED_H + /* FreeBSD */ + struct xucred xucred; +#else + /* Linux */ struct ucred ucred; +#endif int error; struct wl_priv_signal resource_created_signal; }; -@@ -501,10 +514,20 @@ wl_client_create(struct wl_display *display, int fd) +@@ -303,7 +316,13 @@ wl_resource_post_error(struct wl_resource *resource, + static void + destroy_client_with_error(struct wl_client *client, const char *reason) + { ++#ifdef HAVE_SYS_UCRED_H ++ /* FreeBSD */ ++ wl_log("%s\n", reason); ++#else ++ /* Linux */ + wl_log("%s (pid %u)\n", reason, client->ucred.pid); ++#endif + wl_client_destroy(client); + } + +@@ -517,10 +536,20 @@ wl_client_create(struct wl_display *display, int fd) if (!client->source) goto err_client; +#if defined(SO_PEERCRED) + /* Linux */ len = sizeof client->ucred; if (getsockopt(fd, SOL_SOCKET, SO_PEERCRED, &client->ucred, &len) < 0) goto err_source; +#elif defined(LOCAL_PEERCRED) + /* FreeBSD */ + len = sizeof client->xucred; + if (getsockopt(fd, SOL_SOCKET, LOCAL_PEERCRED, + &client->xucred, &len) < 0 || + client->xucred.cr_version != XUCRED_VERSION) + goto err_source; +#endif client->connection = wl_connection_create(fd); if (client->connection == NULL) -@@ -558,12 +581,23 @@ WL_EXPORT void +@@ -574,12 +603,23 @@ WL_EXPORT void wl_client_get_credentials(struct wl_client *client, pid_t *pid, uid_t *uid, gid_t *gid) { +#ifdef HAVE_SYS_UCRED_H + /* FreeBSD */ if (pid) + *pid = 0; /* FIXME: not defined on FreeBSD */ + if (uid) + *uid = client->xucred.cr_uid; + if (gid) + *gid = client->xucred.cr_gid; +#else + /* Linux */ + if (pid) *pid = client->ucred.pid; if (uid) *uid = client->ucred.uid; if (gid) *gid = client->ucred.gid; +#endif } /** Get the file descriptor for the client Index: head/graphics/wayland/files/patch-src_wayland-shm.c =================================================================== --- head/graphics/wayland/files/patch-src_wayland-shm.c (revision 482188) +++ head/graphics/wayland/files/patch-src_wayland-shm.c (revision 482189) @@ -1,147 +1,147 @@ ---- src/wayland-shm.c.orig 2017-08-08 18:20:52 UTC +--- src/wayland-shm.c.orig 2018-04-09 17:19:26 UTC +++ src/wayland-shm.c @@ -30,6 +30,8 @@ #define _GNU_SOURCE +#include "../config.h" + #include #include #include @@ -59,6 +61,9 @@ struct wl_shm_pool { char *data; int32_t size; int32_t new_size; +#ifdef HAVE_SYS_UCRED_H + int fd; +#endif }; struct wl_shm_buffer { @@ -76,15 +81,24 @@ struct wl_shm_sigbus_data { int fallback_mapping_used; }; +static void *mremap_compat_maymove(void *, size_t, size_t, int, int, int); + static void shm_pool_finish_resize(struct wl_shm_pool *pool) { void *data; + int fd = -1; if (pool->size == pool->new_size) return; - data = mremap(pool->data, pool->size, pool->new_size, MREMAP_MAYMOVE); +#ifdef HAVE_SYS_UCRED_H + fd = pool->fd; +#endif + + data = mremap_compat_maymove(pool->data, pool->size, pool->new_size, + PROT_READ | PROT_WRITE, MAP_SHARED, fd); + if (data == MAP_FAILED) { wl_resource_post_error(pool->resource, WL_SHM_ERROR_INVALID_FD, @@ -110,6 +124,10 @@ shm_pool_unref(struct wl_shm_pool *pool, bool external if (pool->internal_refcount + pool->external_refcount) return; +#ifdef HAVE_SYS_UCRED_H + close(pool->fd); +#endif + munmap(pool->data, pool->size); free(pool); } @@ -223,6 +241,73 @@ shm_pool_destroy(struct wl_client *client, struct wl_r wl_resource_destroy(resource); } +#ifdef HAVE_MREMAP +static void * +mremap_compat_maymove(void *old_address, size_t old_size, size_t new_size, + int old_prot, int old_flags, int old_fd) +{ + return mremap(old_address, old_size, new_size, MREMAP_MAYMOVE); +} +#else +static void * +mremap_compat_maymove(void *old_address, size_t old_size, size_t new_size, + int old_prot, int old_flags, int old_fd) +{ + /* FreeBSD doesn't support mremap() yet, so we have to emulate it. + * This assumes MREMAP_MAYMOVE is the only flag in use. */ + if (new_size == old_size) { + return old_address; + } else if (new_size < old_size) { + /* Shrinking: munmap() the spare region. */ + munmap(old_address + old_size, new_size - old_size); + return old_address; + } else { + void *ret; + + /* Growing. Try and mmap() the extra region at the end of + * our existing allocation. If that gets mapped in the + * wrong place, fall back to mmap()ing an entirely new + * region of new_size and copying the data across. */ + ret = mmap(old_address + old_size, new_size - old_size, + old_prot, old_flags, old_fd, 0); + +/* FIXME TODO: msync() before munmap()? */ + if (ret == MAP_FAILED) { + /* Total failure! */ + return ret; + } else if (ret == old_address + old_size) { + /* Success. */ + return old_address; + } else if (ret != old_address + old_size) { + /* Partial failure. Fall back to mapping an + * entirely new region. Unmap the region we + * just mapped first. */ + munmap(ret, new_size - old_size); + + /* Map an entirely new region. */ + ret = mmap(NULL, new_size, + old_prot, old_flags, old_fd, 0); + if (ret == MAP_FAILED) { + /* Total failure! */ + return ret; + } + + /* Copy the old data across. Implicit assumption + * that the old and new regions don't overlap. */ + memcpy(ret, old_address, old_size); + + /* Unmap the old region. */ + munmap(old_address, old_size); + + return ret; + } + } + + /* Unreachable. */ + return MAP_FAILED; +} +#endif + static void shm_pool_resize(struct wl_client *client, struct wl_resource *resource, int32_t size) @@ -284,7 +369,14 @@ shm_create_pool(struct wl_client *client, struct wl_re - "failed mmap fd %d", fd); + "failed mmap fd %d: %m", fd); goto err_free; } + +#ifdef HAVE_SYS_UCRED_H + /* We need to keep the FD around on FreeBSD so we can implement + * mremap(). See: mremap_compat_maymove(). */ + pool->fd = fd; +#else close(fd); +#endif pool->resource = wl_resource_create(client, &wl_shm_pool_interface, 1, id); Index: head/graphics/wayland/files/patch-tests_sanity-test.c =================================================================== --- head/graphics/wayland/files/patch-tests_sanity-test.c (revision 482188) +++ head/graphics/wayland/files/patch-tests_sanity-test.c (revision 482189) @@ -1,22 +1,22 @@ ---- tests/sanity-test.c.orig 2016-02-17 01:13:16 UTC +--- tests/sanity-test.c.orig 2018-04-09 17:19:26 UTC +++ tests/sanity-test.c -@@ -92,7 +92,8 @@ FAIL_TEST(sanity_malloc_direct) +@@ -97,7 +97,8 @@ FAIL_TEST(sanity_malloc_direct) TEST(disable_leak_checks) { volatile void *mem; - assert(leak_check_enabled); +// XXX FreeBSD disables leak checks... +// assert(leak_check_enabled); /* normally this should be on the beginning of the test. * Here we need to be sure, that the leak checks are * turned on */ -@@ -171,7 +172,8 @@ sanity_fd_no_leak(void) +@@ -183,7 +184,8 @@ sanity_fd_no_leak(void) { int fd[2]; - assert(leak_check_enabled); +// XXX FreeBSD leak checks are disabled +// assert(leak_check_enabled); /* leak 2 file descriptors */ if (pipe(fd) < 0) Index: head/graphics/wayland/files/patch-tests_test-helpers.c =================================================================== --- head/graphics/wayland/files/patch-tests_test-helpers.c (revision 482188) +++ head/graphics/wayland/files/patch-tests_test-helpers.c (revision 482189) @@ -1,52 +1,52 @@ ---- tests/test-helpers.c.orig 2015-07-06 19:38:51 UTC +--- tests/test-helpers.c.orig 2018-08-24 18:04:36 UTC +++ tests/test-helpers.c -@@ -23,6 +23,12 @@ - * SOFTWARE. - */ +@@ -25,6 +25,12 @@ + #include "config.h" + +#include "../config.h" + +#ifdef HAVE_SYS_PARAM_H +#include +#endif + #include #include #include -@@ -32,6 +38,16 @@ +@@ -40,6 +46,16 @@ #include "test-runner.h" +#ifdef __FreeBSD__ +/* FreeBSD uses fdescfs (which must be mounted using: + * mount -t fdescfs fdescfs /dev/fd + * before the test suite can be run). */ +#define OPEN_FDS_DIR "/dev/fd" +#else +/* Linux. */ +#define OPEN_FDS_DIR "/proc/self/fd" +#endif + int count_open_fds(void) { -@@ -39,8 +55,8 @@ count_open_fds(void) +@@ -47,8 +63,8 @@ count_open_fds(void) struct dirent *ent; int count = 0; - dir = opendir("/proc/self/fd"); - assert(dir && "opening /proc/self/fd failed."); + dir = opendir(OPEN_FDS_DIR); + assert(dir && "opening " OPEN_FDS_DIR " failed."); errno = 0; while ((ent = readdir(dir))) { -@@ -49,7 +65,7 @@ count_open_fds(void) +@@ -57,7 +73,7 @@ count_open_fds(void) continue; count++; } - assert(errno == 0 && "reading /proc/self/fd failed."); + assert(errno == 0 && "reading " OPEN_FDS_DIR " failed."); closedir(dir); Index: head/graphics/wayland/files/patch-tests_test-runner.c =================================================================== --- head/graphics/wayland/files/patch-tests_test-runner.c (revision 482188) +++ head/graphics/wayland/files/patch-tests_test-runner.c (revision 482189) @@ -1,172 +1,190 @@ ---- tests/test-runner.c.orig 2017-08-08 18:20:52 UTC +--- tests/test-runner.c.orig 2018-08-24 18:04:36 UTC +++ tests/test-runner.c @@ -25,6 +25,12 @@ #define _GNU_SOURCE +#include "../config.h" + +#ifdef HAVE_SYS_PARAM_H +#include +#endif + #include #include #include @@ -37,19 +43,36 @@ #include #include #include -+#ifdef __linux__ ++#ifdef HAVE_SYS_PRCTL_H #include +#endif #ifndef PR_SET_PTRACER # define PR_SET_PTRACER 0x59616d61 #endif +#include #include "test-runner.h" static int num_alloc; + +extern const struct test __start_test_section, __stop_test_section; + +/* This is all disabled for FreeBSD because it gives "can't allocate initial + * thread" aborts otherwise. */ +#ifndef __FreeBSD__ static void* (*sys_malloc)(size_t); static void (*sys_free)(void*); static void* (*sys_realloc)(void*, size_t); static void* (*sys_calloc)(size_t, size_t); +#endif +#ifdef __FreeBSD__ +/* XXX review ptrace() usage */ +#define PTRACE_ATTACH PT_ATTACH +#define PTRACE_CONT PT_CONTINUE +#define PTRACE_DETACH PT_DETACH +#endif + /* when set to 1, check if tests are not leaking memory and opened files. * It is turned on by default. It can be turned off by * WAYLAND_TEST_NO_LEAK_CHECK environment variable. */ @@ -57,7 +80,7 @@ int leak_check_enabled; /* when this var is set to 0, every call to test_set_timeout() is * suppressed - handy when debugging the test. Can be set by - * WAYLAND_TEST_NO_TIMEOUTS environment variable. */ + * WAYLAND_TESTS_NO_TIMEOUTS evnironment var */ static int timeouts_enabled = 1; /* set to one if the output goes to the terminal */ @@ -65,6 +88,7 @@ static int is_atty = 0; extern const struct test __start_test_section, __stop_test_section; +#ifndef __FreeBSD__ __attribute__ ((visibility("default"))) void * malloc(size_t size) { @@ -98,6 +122,7 @@ calloc(size_t nmemb, size_t size) return sys_calloc(nmemb, size); } +#endif static const struct test * find_test(const char *name) @@ -292,6 +317,8 @@ is_debugger_attached(void) return 0; } + +// xxx start here pid = fork(); if (pid == -1) { perror("fork"); -@@ -312,7 +339,7 @@ is_debugger_attached(void) +@@ -312,13 +339,14 @@ is_debugger_attached(void) _exit(1); if (!waitpid(-1, NULL, 0)) _exit(1); - ptrace(PTRACE_CONT, NULL, NULL); + ptrace(PTRACE_CONT, ppid, NULL, NULL); ptrace(PTRACE_DETACH, ppid, NULL, NULL); _exit(0); } else { -@@ -346,17 +373,19 @@ int main(int argc, char *argv[]) + close(pipefd[0]); + + /* Enable child to ptrace the parent process */ ++#if defined(HAVE_PRCTL) + rc = prctl(PR_SET_PTRACER, pid); + if (rc != 0 && errno != EINVAL) { + /* An error prevents us from telling if a debugger is attached. +@@ -328,7 +356,9 @@ is_debugger_attached(void) + */ + perror("prctl"); + write(pipefd[1], "-", 1); +- } else { ++ } else ++#endif ++ { + /* Signal to client that parent is ready by passing '+' */ + write(pipefd[1], "+", 1); + } +@@ -346,17 +376,19 @@ int main(int argc, char *argv[]) const struct test *t; pid_t pid; int total, pass; +#ifdef HAVE_WAITID siginfo_t info; +#else + int status; +#endif +#ifndef __FreeBSD__ /* Load system malloc, free, and realloc */ sys_calloc = dlsym(RTLD_NEXT, "calloc"); sys_realloc = dlsym(RTLD_NEXT, "realloc"); sys_malloc = dlsym(RTLD_NEXT, "malloc"); sys_free = dlsym(RTLD_NEXT, "free"); - if (isatty(fileno(stderr))) - is_atty = 1; - if (is_debugger_attached()) { leak_check_enabled = 0; timeouts_enabled = 0; -@@ -364,7 +393,17 @@ int main(int argc, char *argv[]) +@@ -364,7 +396,17 @@ int main(int argc, char *argv[]) leak_check_enabled = !getenv("WAYLAND_TEST_NO_LEAK_CHECK"); timeouts_enabled = !getenv("WAYLAND_TEST_NO_TIMEOUTS"); } +#else + /* Disable leak checking on FreeBSD since we can't override malloc(). */ + leak_check_enabled = 0; + /* XXX review later */ + timeouts_enabled = 0; +#endif + if (isatty(fileno(stderr))) + is_atty = 1; + + if (argc == 2 && strcmp(argv[1], "--help") == 0) usage(argv[0], EXIT_SUCCESS); -@@ -395,7 +434,8 @@ int main(int argc, char *argv[]) +@@ -395,7 +437,8 @@ int main(int argc, char *argv[]) if (pid == 0) run_test(t); /* never returns */ - if (waitid(P_PID, pid, &info, WEXITED)) { +#ifdef HAVE_WAITID + if (waitid(P_PID, 0, &info, WEXITED)) { stderr_set_color(RED); fprintf(stderr, "waitid failed: %m\n"); stderr_reset_color(); -@@ -426,6 +466,25 @@ int main(int argc, char *argv[]) +@@ -426,6 +469,25 @@ int main(int argc, char *argv[]) break; } +#else + if (waitpid(-1, &status, 0) == -1) { + fprintf(stderr, "waitpid failed: %s\n", + strerror(errno)); + abort(); + } + + fprintf(stderr, "test \"%s\":\t", t->name); + if (WIFEXITED(status)) { + fprintf(stderr, "exit status %d", WEXITSTATUS(status)); + if (WEXITSTATUS(status) == EXIT_SUCCESS) + success = 1; + } else if (WIFSIGNALED(status)) { + fprintf(stderr, "signal %d", WTERMSIG(status)); + } +#endif + + if (t->must_fail) + success = !success; if (success) { pass++; Index: head/graphics/wayland/pkg-plist =================================================================== --- head/graphics/wayland/pkg-plist (revision 482188) +++ head/graphics/wayland/pkg-plist (revision 482189) @@ -1,32 +1,35 @@ bin/wayland-scanner include/wayland-client-core.h include/wayland-client-protocol.h include/wayland-client.h include/wayland-cursor.h +include/wayland-egl-backend.h include/wayland-egl-core.h include/wayland-egl.h include/wayland-server-core.h include/wayland-server-protocol.h include/wayland-server.h include/wayland-util.h include/wayland-version.h -lib/libwayland-client.a lib/libwayland-client.so lib/libwayland-client.so.0 lib/libwayland-client.so.0.3.0 -lib/libwayland-cursor.a lib/libwayland-cursor.so lib/libwayland-cursor.so.0 lib/libwayland-cursor.so.0.0.0 -lib/libwayland-server.a +lib/libwayland-egl.so +lib/libwayland-egl.so.1 +lib/libwayland-egl.so.1.0.0 lib/libwayland-server.so lib/libwayland-server.so.0 lib/libwayland-server.so.0.1.0 libdata/pkgconfig/wayland-client.pc libdata/pkgconfig/wayland-cursor.pc +libdata/pkgconfig/wayland-egl-backend.pc +libdata/pkgconfig/wayland-egl.pc libdata/pkgconfig/wayland-scanner.pc libdata/pkgconfig/wayland-server.pc share/aclocal/wayland-scanner.m4 %%DATADIR%%/wayland-scanner.mk %%DATADIR%%/wayland.dtd %%DATADIR%%/wayland.xml Index: head/graphics/waylandpp/Makefile =================================================================== --- head/graphics/waylandpp/Makefile (revision 482188) +++ head/graphics/waylandpp/Makefile (revision 482189) @@ -1,28 +1,23 @@ # $FreeBSD$ PORTNAME= waylandpp DISTVERSION= 0.2.3 +PORTREVISION= 1 CATEGORIES= graphics MAINTAINER= tobik@FreeBSD.org COMMENT= Wayland C++ bindings LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +LIB_DEPENDS= libwayland-egl.so:graphics/wayland + USES= cmake:outsource localbase pkgconfig USE_GITHUB= yes GH_ACCOUNT= NilsBrause USE_GL= egl CMAKE_OFF= BUILD_DOCUMENTATION BUILD_EXAMPLES - -OPTIONS_DEFINE= WAYLAND - -WAYLAND_DESC= Requires graphics/mesa-libs with WAYLAND on - -WAYLAND_IGNORE_OFF= Cannot be built without Wayland support -WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ - libwayland-egl.so:graphics/mesa-libs .include Index: head/www/webkit2-gtk3/Makefile =================================================================== --- head/www/webkit2-gtk3/Makefile (revision 482188) +++ head/www/webkit2-gtk3/Makefile (revision 482189) @@ -1,120 +1,120 @@ # Created by: Michael Johnson # $FreeBSD$ PORTNAME= webkit PORTVERSION= 2.20.5 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= http://webkitgtk.org/releases/ PKGNAMESUFFIX= 2-gtk3 DISTNAME= ${PORTNAME}gtk-${PORTVERSION} MAINTAINER= gnome@FreeBSD.org COMMENT= Opensource browser engine using the GTK+ 3 toolkit LICENSE= GPLv2 BSD2CLAUSE LICENSE_COMB= dual LIB_DEPENDS= libenchant-2.so:textproc/enchant2 \ libfribidi.so:converters/fribidi \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libwebp.so:graphics/webp \ libpng.so:graphics/png \ libsecret-1.so:security/libsecret \ libnotify.so:devel/libnotify \ libhyphen.so:textproc/hyphen \ libicutu.so:devel/icu \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libsoup-2.4.so:devel/libsoup \ libgcrypt.so:security/libgcrypt \ libtasn1.so:security/libtasn1 \ libwoff2dec.so:devel/woff2 PORTSCOUT= limitw:1,even USES= bison cmake:outsource compiler:c++14-lang gettext gnome gperf \ jpeg localbase:ldflags perl5 pkgconfig python:2.7,build \ sqlite tar:xz USE_GNOME= cairo gdkpixbuf2 gtk30 introspection:build libxml2 libxslt USE_GL= gl egl glesv2 USE_GSTREAMER1= bad gl USE_LDCONFIG= yes USE_PERL5= build USE_RUBY= yes RUBY_NO_RUN_DEPENDS= yes USE_XORG= x11 xcomposite xdamage xext xrender xt ice BINARY_ALIAS= python=${PYTHON_CMD} CXXFLAGS+= -DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32 CXXFLAGS_powerpc= -DENABLE_YARR_JIT=0 CXXFLAGS_powerpc64= -DENABLE_YARR_JIT=0 \ -mminimal-toc CMAKE_ARGS= -DPORT=GTK CMAKE_OFF= USE_LD_GOLD ${CMAKE_OFF_${ARCH}:U} CMAKE_ON= ENABLE_GLES2 ENABLE_MINIBROWSER CMAKE_OFF_armv6= ENABLE_JIT CMAKE_OFF_armv7= ENABLE_JIT CMAKE_OFF_powerpc= ENABLE_JIT CMAKE_OFF_powerpc64= ENABLE_JIT CONFIGURE_ENV= XDG_CACHE_HOME=${WRKDIR} INSTALL_TARGET= install BROWSER_PLUGINS_DIR?= ${LOCALBASE}/lib/browser_plugins/symlinks/webkit-gtk3 OPTIONS_DEFINE= DEBUG GEOIP NPAPI WAYLAND OPTIONS_DEFAULT= GEOIP OPTIONS_DEFAULT_i386= NPAPI OPTIONS_DEFAULT_amd64= NPAPI OPTIONS_SUB= yes NPAPI_DESC= Support gtk2 (NPAPI) based plugins (like flash) # Building WebKit with debugging symbols requires ar and ld with # support for thin archives. Also see # https://bugs.webkit.org/show_bug.cgi?id=140384 DEBUG_BUILD_DEPENDS= binutils>=0:devel/binutils DEBUG_CMAKE_ON= -DCMAKE_AR=${LOCALBASE}/bin/ar \ -DCMAKE_RANLIB=${LOCALBASE}/bin/ranlib \ -DCMAKE_LINKER=${LOCALBASE}/bin/ld DEBUG_CXXFLAGS= -B${LOCALBASE}/bin DEBUG_CMAKE_OFF= -DCMAKE_AR=/usr/bin/ar \ -DCMAKE_RANLIB=/usr/bin/ranlib \ -DCMAKE_LINKER=/usr/bin/ld DEBUG_CXXFLAGS_OFF= -B/usr/bin DEBUG_CFLAGS_OFF= -DNDEBUG GEOIP_CMAKE_BOOL= ENABLE_GEOLOCATION GEOIP_BUILD_DEPENDS= geoclue>=2.4.3:net/geoclue GEOIP_RUN_DEPENDS= geoclue>=2.4.3:net/geoclue NPAPI_CMAKE_BOOL= ENABLE_PLUGIN_PROCESS_GTK2 NPAPI_USE= GNOME=gtk20 WAYLAND_CMAKE_BOOL= ENABLE_WAYLAND_TARGET -WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ - libwayland-egl.so:graphics/mesa-libs +WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland post-patch: @${REINPLACE_CMD} -e 's|/usr/lib/browser/plugins|${BROWSER_PLUGINS_DIR}|' \ ${WRKSRC}/Source/WebKit/Shared/Plugins/unix/PluginSearchPath.cpp pre-configure: # .if !exists() evaluates too early before cairo has a chance to be installed @if ! pkg-config --exists cairo-egl; then \ ${ECHO_MSG} "${PKGNAME}: Needs cairo with OPENGL support enabled."; \ ${FALSE}; \ fi post-install: @${RLN} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/jsc \ ${STAGEDIR}${PREFIX}/bin/jsc-4 @${RLN} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/MiniBrowser \ ${STAGEDIR}${PREFIX}/bin/MiniBrowser-4 @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.* @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so @${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/* @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver .include Index: head/x11-toolkits/gtk30/Makefile =================================================================== --- head/x11-toolkits/gtk30/Makefile (revision 482188) +++ head/x11-toolkits/gtk30/Makefile (revision 482189) @@ -1,126 +1,113 @@ # Created by: Vanilla I. Shu # $FreeBSD$ # Please keep gtk30 in sync with the following x11-themes ports: # adwaita-icon-theme, gnome-themes-standard and mate-themes PORTNAME= gtk PORTVERSION= 3.22.30 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11-toolkits MASTER_SITES= GNOME/sources/gtk+/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} PKGNAMESUFFIX= 3 DISTNAME= gtk+-${PORTVERSION} DIST_SUBDIR= gnome MAINTAINER= gnome@FreeBSD.org COMMENT= Gimp Toolkit for X11 GUI (current stable version) LICENSE= LGPL20 PORTSCOUT= limit:1,even BUILD_DEPENDS+= at-spi2-atk>=0:accessibility/at-spi2-atk LIB_DEPENDS= libepoxy.so:graphics/libepoxy \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz RUN_DEPENDS+= hicolor-icon-theme>=0:misc/hicolor-icon-theme \ adwaita-icon-theme>=0:x11-themes/adwaita-icon-theme \ at-spi2-atk>=0:accessibility/at-spi2-atk \ librsvg2>=0:graphics/librsvg2 USE_PERL5= build USE_LDCONFIG= yes GNU_CONFIGURE= yes USE_GNOME= atk cairo gdkpixbuf2 introspection:build pango #gtk-update-icon-cache USES= compiler:c11 gettext gmake gnome libtool localbase \ pathfix perl5 pkgconfig tar:xz USE_XORG= xext xrender x11 xinerama xi xrandr xcursor xfixes xdamage \ xcomposite CONFIGURE_ARGS= --enable-x11-backend \ --enable-introspection CPPFLAGS+= -fno-omit-frame-pointer INSTALLS_ICONS= yes INSTALL_TARGET= install-strip LIBVERSION= 0.2200.30 PLIST_SUB+= LIBVERSION=${LIBVERSION} GLIB_SCHEMAS= org.gtk.Demo.gschema.xml \ org.gtk.Settings.ColorChooser.gschema.xml \ org.gtk.Settings.Debug.gschema.xml \ org.gtk.Settings.EmojiChooser.gschema.xml \ org.gtk.Settings.FileChooser.gschema.xml OPTIONS_DEFINE= CUPS CLOUDPRINT COLORD DEBUG BROADWAY WAYLAND OPTIONS_DEFAULT=CUPS COLORD BROADWAY OPTIONS_EXCLUDE_FreeBSD_10= WAYLAND OPTIONS_SUB= yes BROADWAY_DESC= Enable GDK Broadway backend for showing GTK+ in the webbrowser using HTML5 and web sockets. BROADWAY_CONFIGURE_ENABLE= broadway-backend COLORD_DESC= Color profile support COLORD_LIB_DEPENDS= libcolord.so:graphics/colord COLORD_CONFIGURE_ENABLE=colord CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_CONFIGURE_ENABLE= cups CLOUDPRINT_DESC= Cloud printing support CLOUDPRINT_CONFIGURE_ENABLE= cloudprint CLOUDPRINT_USE= gnome=libxml2 CLOUDPRINT_LIB_DEPENDS= librest-0.7.so:devel/librest \ libsoup-2.4.so:devel/libsoup \ libjson-glib-1.0.so:devel/json-glib WAYLAND_DESC= GDK Wayland backend WAYLAND_CONFIGURE_ENABLE= wayland-backend WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols \ v4l_compat>=0:multimedia/v4l_compat -WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ +WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_RUN_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols WAYLAND_USE= GL=egl .include # don't explicitly disable debug, this causes segfaults. ports r437293 DEBUG_CONFIGURE_ON= --enable-debug=yes -WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols -WAYLAND_CONFIGURE_ENABLE= wayland-backend -WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ - libwayland-egl.so:graphics/mesa-libs \ - libxkbcommon.so:x11/libxkbcommon -WAYLAND_RUN_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols - post-patch: @${REINPLACE_CMD} -e 's|[{]libdir[}]/locale|{datadir}/locale|g' \ ${WRKSRC}/configure pre-configure: # .if !exists() evaluates too early before cairo has a chance to be installed @if ! pkg-config --exists cairo-xlib; then \ ${ECHO_MSG} "${PKGNAME}: Needs cairo with X11 support enabled."; \ ${FALSE}; \ fi -.if ${PORT_OPTIONS:MWAYLAND} - @if ! pkg-config --exists wayland-egl; then \ - ${ECHO_MSG} "${PKGNAME}: Needs mesa-libs with wayland support enabled."; \ - ${FALSE}; \ - fi -.endif pre-build: @${RM} -r ${WRKSRC}/docs/gtk.info* post-install: @${MKDIR} ${STAGEDIR}${PREFIX}/lib/gtk-3.0/modules @${MKDIR} ${STAGEDIR}${PREFIX}/lib/gtk-3.0/${GTK3_VERSION}/engines @${MKDIR} ${STAGEDIR}${PREFIX}/lib/gtk-3.0/${GTK3_VERSION}/loaders ${INSTALL_MAN} ${WRKSRC}/docs/reference/gtk/gtk-query-immodules-3.0.1 \ ${STAGEDIR}${PREFIX}/man/man1 .include