Changeset View
Standalone View
x11-wm/weston/Makefile
- This file was added.
# Created by: Johannes Lundberg <johalun0@gmail.com> | |||||
# $FreeBSD$ | |||||
PORTNAME= weston | |||||
PORTVERSION= 3.0.0 | |||||
CATEGORIES= x11-wm wayland | |||||
MASTER_SITES= http://wayland.freedesktop.org/releases/ | |||||
MAINTAINER= johalun0@gmail.com | |||||
mat: Add empty line before this. | |||||
COMMENT= Wayland Reference Compositor | |||||
Done Inline ActionsBefore assigning that port to x11@freebsd.org (it should be spelled FreeBSD.org) make sure to ask the group if they are ok with it. mat: Before assigning that port to x11@freebsd.org (it should be spelled FreeBSD.org) make sure to… | |||||
Done Inline ActionsI'm part of x11@ and I'm ok with it :) bapt: I'm part of x11@ and I'm ok with it :) | |||||
Not Done Inline ActionsYeah I was thinking about that.. I'm basically the only one working on wayland/weston ports. I don't mind being the maintainer for now. On the other hand, I kind of am part of x11 team so whichever makes most sense. johalun0_gmail.com: Yeah I was thinking about that.. I'm basically the only one working on wayland/weston ports. I… | |||||
Done Inline ActionsI second that OK as member of x11@ rezny: I second that OK as member of x11@ | |||||
LICENSE= MIT | |||||
Done Inline ActionsIf the software come with a file containing the license, it should be added below this line, something like: LICENSE_FILE= ${WRKSRC}/license-file mat: If the software come with a file containing the license, it should be added below this line… | |||||
BUILD_DEPENDS= wayland-protocols>=1.7:graphics/wayland-protocols | |||||
LIB_DEPENDS= \ | |||||
libxkbcommon.so:x11/libxkbcommon \ | |||||
Done Inline ActionsRemove this. mat: Remove this. | |||||
Done Inline ActionsRemove empty line. mat: Remove empty line. | |||||
libpixman-1.so:x11/pixman \ | |||||
libcairo.so:graphics/cairo \ | |||||
libpango-1.0.so:x11-toolkits/pango \ | |||||
libcolord.so:graphics/colord \ | |||||
libfontconfig.so:x11-fonts/fontconfig \ | |||||
libfreetype.so:print/freetype2 \ | |||||
libwayland-server.so:graphics/wayland \ | |||||
libevent.so:devel/libevent \ | |||||
libpng.so:graphics/png \ | |||||
Done Inline ActionsWAYLAND is an option, not on by default, so this can fail when mesa-libs is installed without that option. adridg: WAYLAND is an option, not on by default, so this can fail when mesa-libs is installed without… | |||||
libwebp.so:graphics/webp \ | |||||
Done Inline ActionsThe port has since been renamed: commit 37fb9cacff2d0bdfd35e4db2eb0bcce97f6b0c61 Author: jbeich <jbeich@FreeBSD.org> Date: Mon Feb 20 02:57:04 2017 +0000 devel/libevent2: drop historical suffix after r362796 PR: 216777 adridg: The port has since been renamed:
commit 37fb9cacff2d0bdfd35e4db2eb0bcce97f6b0c61… | |||||
libffi.so:devel/libffi \ | |||||
libepoll-shim.so:devel/libepoll-shim \ | |||||
libudev.so:devel/libudev-devd \ | |||||
libunwind.so:devel/libunwind \ | |||||
libevdev.so:devel/libevdev \ | |||||
libinput.so:x11/libinput \ | |||||
libmtdev.so:devel/libmtdev \ | |||||
liblcms2.so:graphics/lcms2 | |||||
USES= autoreconf alias gmake pathfix jpeg libtool pkgconfig tar:xz localbase:ldflags | |||||
Done Inline ActionsRemove empty line. mat: Remove empty line. | |||||
USE_XORG= x11 xcb xcursor | |||||
Done Inline ActionsThis should not be needed. USE_GL with any of egl, gbm, gl, or gles2 provides libglapi.so. After D10448 those will all be effectively the same anyway, simply adding BUILD and RUN_DEPENDS on mesa-libs. rezny: This should not be needed. USE_GL with any of egl, gbm, gl, or gles2 provides libglapi.so. | |||||
USE_GL= egl gbm glesv2 | |||||
Done Inline ActionsIt would be nice if you could split the OPTIONS_* from the *_DESC to make it more readable. mat: It would be nice if you could split the OPTIONS_* from the *_DESC to make it more readable. | |||||
USE_LDCONFIG= yes | |||||
OPTIONS_SUB= yes | |||||
OPTIONS_DEFINE= SUID CLIENTS CLIENTS_INSTALL XWAYLAND | |||||
OPTIONS_MULTI= COMPOSITORS | |||||
OPTIONS_MULTI_COMPOSITORS= X11 DRM WAYLAND SCFB | |||||
OPTIONS_SINGLE= CAIRO | |||||
OPTIONS_SINGLE_CAIRO= CAIROIMAGE CAIROGL CAIROGLESV2 | |||||
OPTIONS_DEFAULT= SUID CAIROIMAGE CLIENTS CLIENTS_INSTALL XWAYLAND X11 DRM WAYLAND SCFB | |||||
CAIRO_DESC= Cairo backend | |||||
CAIROGL_DESC= GL (enabled in cairo by default) | |||||
CAIROGLESV2_DESC= GLESv2 (requires cairo built with --enable-glesv2) | |||||
CAIROIMAGE_DESC= Image (Recommended) | |||||
Done Inline ActionsThe BUILD_DEPENDS, LIB_DEPENDS and RUN_DEPENDS must appear earlier in the Makefile, just after the LICENSE block. mat: The BUILD_DEPENDS, LIB_DEPENDS and RUN_DEPENDS must appear earlier in the Makefile, just after… | |||||
CLIENTS_DESC= Build Weston clients | |||||
CLIENTS_INSTALL_DESC= Install Weston clients | |||||
Done Inline ActionsOnly list dependencies once, not two, three, or more times, once. mat: Only list dependencies once, not two, three, or more times, once. | |||||
Done Inline ActionsThis one stays with the options, it should, maybe be right after the DRM_CONFIGURE_ENABLE line. mat: This one stays with the options, it should, maybe be right after the DRM_CONFIGURE_ENABLE line. | |||||
matUnsubmitted Not Done Inline ActionsWhy would one want to build something that is not installed ? mat: Why would one want to build something that is not installed ? | |||||
johalun0_gmail.comAuthorUnsubmitted Not Done Inline ActionsTrue. Ask the original author of this Makefile :) I will remove that option. johalun0_gmail.com: True. Ask the original author of this Makefile :) I will remove that option. | |||||
DRM_DESC= Hardware accelerated compositor backend | |||||
SCFB_DESC= Software rendered compositor backend | |||||
SUID_DESC= Install weston-launch binary with setuid bit set | |||||
matUnsubmitted Not Done Inline ActionsIs there any interest of having this not always installed as suid ? mat: Is there any interest of having this **not** always installed as suid ? | |||||
johalun0_gmail.comAuthorUnsubmitted Not Done Inline ActionsHmm. Maybe not for weston since it has a separate binaries for kms vs x11 backends. johalun0_gmail.com: Hmm. Maybe not for weston since it has a separate binaries for kms vs x11 backends. | |||||
WAYLAND_DESC= Nested Weston compositors | |||||
X11_DESC= Run Weston as X11 client (good for testing) | |||||
XWAYLAND_DESC= Support running X clients in Weston | |||||
CAIROIMAGE_CONFIGURE_ON= --with-cairo=image | |||||
CAIROGL_CONFIGURE_ON= --with-cairo=gl | |||||
CAIROGLESV2_CONFIGURE_ON= --with-cairo=glesv2 --with-cairo-glesv2 | |||||
CLIENTS_CONFIGURE_ENABLE= clients | |||||
CLIENTS_INSTALL_CONFIGURE_ENABLE= demo-clients-install | |||||
DRM_CONFIGURE_ENABLE= drm-compositor | |||||
Done Inline ActionsWhy += ? It is not defined before. Also, the BUILD_DEPENDS definition must be before LIB_DEPENDS. mat: Why += ? It is not defined before.
Also, the BUILD_DEPENDS definition must be before… | |||||
DRM_LIB_DEPENDS= libdrm.so:graphics/libdrm | |||||
Done Inline ActionsThis is already taken care of by the LIB_DEPENDS before, remove it. mat: This is already taken care of by the LIB_DEPENDS before, remove it. | |||||
SCFB_CONFIGURE_ENABLE= scfb-compositor | |||||
WAYLAND_CONFIGURE_ENABLE= wayland-compositor | |||||
X11_CONFIGURE_ENABLE= x11-compositor | |||||
XWAYLAND_CONFIGURE_ENABLE= xwayland | |||||
CPPFLAGS+= -I${LOCALBASE}/include/libepoll-shim | |||||
GROUPS= weston-launch | |||||
Done Inline ActionsOnly the latter part is needed, ${LOCALBASE}/include is added by USES=localbase already. rezny: Only the latter part is needed, ${LOCALBASE}/include is added by USES=localbase already. | |||||
GNU_CONFIGURE= YES | |||||
CONFIGURE_ARGS= --enable-weston-launch | |||||
CONFIGURE_ARGS+= --disable-fbdev-compositor | |||||
CONFIGURE_ARGS+= --disable-vaapi-recorder | |||||
Not Done Inline ActionsChange the += by =, there is no previous definition. mat: Change the += by =, there is no previous definition. | |||||
Not Done Inline ActionsDoesn't _CONFIGURE_ENABLE or something similar write to CONFIGURE_ARGS? I remember having some weird bug were configure flags "disappeared" because they were overwritten. johalun0_gmail.com: Doesn't _CONFIGURE_ENABLE or something similar write to CONFIGURE_ARGS? I remember having some… | |||||
Not Done Inline ActionsWell, make(1) is not magic. You use += when there is a previous definition you wish to append to. Here, looking up in the Makefile, there is no previous definition, so there is no need for +=. mat: Well, make(1) is not magic. You use += when there is a previous definition you wish to append… | |||||
#CONFIGURE_ARGS+= --disable-xwayland-test | |||||
# We handle setuid in the plist. This allows to build as a user. | |||||
CONFIGURE_ARGS+= --disable-setuid-install | |||||
CONFIGURE_ENV+= LIBS="-lepoll-shim -lrt -lEGL" | |||||
CONFIGURE_ENV+= EGL_TESTS_LIBS="-lwayland-client -lGLESv2 -lwayland-egl -lwayland-client" | |||||
CONFIGURE_ENV+= EGL_TESTS_CFLAGS="-L${STAGEDIR}${PREFIX}/lib -I${STAGEDIR}${PREFIX}/include" | |||||
INSTALL_TARGET= install-strip | |||||
.include <bsd.port.options.mk> | |||||
.if !empty(PORT_OPTIONS:MCLIENTS_INSTALL) | |||||
USE_GNOME+=glib20 | |||||
.endif | |||||
matUnsubmitted Not Done Inline ActionsCLIENTS_INSTALL_USE= gnome=glib20 mat: ```
CLIENTS_INSTALL_USE= gnome=glib20
``` | |||||
# Should not have to do this. "make" should find them in $WAYLAND_PROTOCOLS_DATADIR set by automake... | |||||
Done Inline ActionsThis is: CAIROIMAGE_CONFIGURE_ON= --with-cairo=image mat: This is:
CAIROIMAGE_CONFIGURE_ON= --with-cairo=image | |||||
WAYLAND_PROTOCOLS_DATADIR=`pkg-config --variable=pkgdatadir wayland-protocols` | |||||
pre-configure: | |||||
@${CP} ${WAYLAND_PROTOCOLS_DATADIR}/stable/*/* ${WRKSRC}/protocol/ | |||||
@${CP} ${WAYLAND_PROTOCOLS_DATADIR}/unstable/*/* ${WRKSRC}/protocol/ | |||||
@if ! pkg-config --exists wayland-egl; then \ | |||||
${ECHO_MSG} "${PKGNAME}: Needs mesa-libs with wayland support enabled."; \ | |||||
Done Inline ActionsSame here. mat: Same here. | |||||
${FALSE}; \ | |||||
fi | |||||
Done Inline ActionsNot needed, you already have USES=autoreconf. mat: Not needed, you already have USES=autoreconf. | |||||
.include <bsd.port.mk> |
Add empty line before this.