blob: 6bf43514e9697ac2f0fa9b494a870eba826f9de9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
|
PORTNAME= efl
DISTVERSION= 1.27.0
PORTREVISION= 5
CATEGORIES= devel enlightenment
MASTER_SITES= http://download.enlightenment.org/rel/libs/${PORTNAME}/
DIST_SUBDIR= enlightenment
PATCH_SITES= https://git.enlightenment.org/enlightenment/${PORTNAME}/commit/
PATCHFILES= 6c3630ffda0884b86e6ffc9d00d7315ab67858e5.patch:-p1
MAINTAINER= enlightenment@FreeBSD.org
COMMENT= Enlightenment Foundation Libraries
WWW= https://docs.enlightenment.org/efl/current/
LICENSE= BSD2CLAUSE LGPL21
LICENSE_COMB= multi
BUILD_DEPENDS= checkmk:devel/check
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 \
libcurl.so:ftp/curl \
libsndfile.so:audio/libsndfile
# lib/libeio.so.1
CONFLICTS_INSTALL= libeio
USES= compiler:c++14-lang gettext-tools gnome iconv \
jpeg libtool localbase:ldflags meson ninja ssl pathfix pkgconfig \
python shared-mime-info shebangfix tar:xz xorg
SHEBANG_FILES= src/tests/elementary/spec/generator.py \
src/bin/exactness/exactness_play.in \
src/bin/exactness/exactness_record.in
USE_XORG= x11 xcb xcursor xcomposite xdamage xext xfixes xi xinerama \
xrandr xrender xtst xscrnsaver
USE_LDCONFIG= yes
MESON_ARGS= -Dsystemd=false -Deeze=false -Dinput=false
PLIST_SUB= BRANCHVERSION=${PORTVERSION:R} PORTVERSION=${PORTVERSION}
OPTIONS_DEFINE= AVAHI FRIBIDI HARFBUZZ NLS PHYSICS PULSEAUDIO SDL VNC EFLONE ELUA EXAMPLES DOXYGEN WAYLAND
OPTIONS_GROUP= EMOTION INPUT LOADER BINDINGS
OPTIONS_GROUP_EMOTION= GSTREAMER V4L
OPTIONS_GROUP_INPUT= IBUS SCIM XIM
OPTIONS_GROUP_LOADER= OPENJPEG PDF PS RAW SVG WEBP XCF AVIF HEIF JXL
OPTIONS_GROUP_BINDINGS= LUA CXX
OPTIONS_GROUP_WAYLAND= WAYLAND
OPTIONS_SINGLE= CRYPTO ENGINE LUAL
OPTIONS_SINGLE_ENGINE= OPENGL OPENGLES NONE
OPTIONS_SINGLE_LUAL= LUAJIT LUALANG
OPTIONS_DEFAULT= FRIBIDI HARFBUZZ PULSEAUDIO EXAMPLES GSTREAMER V4L SCIM XIM \
OPENSSL OPENJPEG PDF PS RAW SVG WEBP XCF OPENGLES LUAJIT CXX
OPTIONS_SUB= yes
HARFBUZZ_DESC= OpenType text shaping engine
PHYSICS_DESC= Physics engine (bullet) - DEPRECATED UPSTREAM
EFLONE_DESC= Create EFL-One library (single file library) - EXPERIMENTAL
ELUA_DESC= Lua launcher binary support in efl
VNC_DESC= VNC Server support
IBUS_DESC= Intelligent Input Bus
SCIM_DESC= Smart Common Input Method
XIM_DESC= X Input Method
SVG_DESC= Vector graphics support
XCF_DESC= Gimp image format support
JXL_DESC= JPEG XL image format support
LUAL_DESC= LUA
LUALANG_DESC= Use Lua
LUAJIT_DESC= Use Luajit
OPENGLES_DESC= 2D/3D rendering support via OpenGL ES
NONE_DESC= No acceleration, software only
LUA_DESC= Lua Bindings
CXX_DESC= C++ Bindings
EXAMPLES_DESC= Build examples of using EFL
AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app
AVAHI_MESON_TRUE= avahi
FRIBIDI_LIB_DEPENDS= libfribidi.so:converters/fribidi
FRIBIDI_MESON_TRUE= fribidi
HARFBUZZ_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz
HARFBUZZ_MESON_TRUE= harfbuzz
NLS_USES= gettext-runtime
NLS_MESON_TRUE= nls
PHYSICS_LIB_DEPENDS= libBulletDynamics.so:devel/bullet
PHYSICS_MESON_TRUE= physics
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
PULSEAUDIO_MESON_TRUE= pulseaudio
EFLONE_BROKEN_i386= EFLONE option is broken on i386 by the upstream bug: https://phab.enlightenment.org/T8870
EFLONE_MESON_TRUE= efl-one
ELUA_MESON_TRUE= elua
EXAMPLES_MESON_TRUE= build-examples
DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen
DOXYGEN_MESON_TRUE= docs
VNC_MESON_TRUE= vnc-server
VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver
LUA_IMPLIES= ELUA
LUA_VARS= lua_binding=lua
CXX_VARS= cxx_binding=cxx
WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.7:graphics/wayland-protocols
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_MESON_TRUE= wl
WAYLAND_BROKEN= Wayland bits compile but don't yet work at runtime
GSTREAMER_USES= gstreamer
GSTREAMER_USE= GSTREAMER=core
GSTREAMER_MESON_TRUE= gstreamer
V4L_BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat
V4L_MESON_TRUE= v4l2
IBUS_LIB_DEPENDS= libibus-1.0.so:textproc/ibus
IBUS_USES= gnome
IBUS_USE= GNOME=glib20
IBUS_MESON_TRUE= glib
IBUS_VARS_OFF= ibus_disabler=ibus
SCIM_LIB_DEPENDS= libscim-1.0.so:textproc/scim
SCIM_VARS_OFF= scim_disabler=scim
XIM_VARS_OFF= xim_disabler=xim
OPENJPEG_LIB_DEPENDS= libopenjp2.so:graphics/openjpeg
OPENJPEG_VARS_OFF= openjpeg_disabler=jp2k
PDF_LIB_DEPENDS= libpoppler.so:graphics/poppler
PDF_VARS_OFF= pdf_disabler=pdf
PS_LIB_DEPENDS= libspectre.so:print/libspectre
PS_VARS_OFF= ps_disabler=ps
RAW_LIB_DEPENDS= libraw.so:graphics/libraw
RAW_VARS_OFF= raw_disabler=raw
SVG_USES= gnome
SVG_USE= GNOME=cairo GNOME=librsvg2
SVG_VARS_OFF= svg_disabler=rsvg
AVIF_LIB_DEPENDS= libavif.so:graphics/libavif
AVIF_VARS_OFF= avif_disabler=avif
HEIF_LIB_DEPENDS= libheif.so:graphics/libheif
HEIF_VARS_OFF= heif_disabler=heif
WEBP_LIB_DEPENDS= libwebp.so:graphics/webp
WEBP_VARS_OFF= webp_disabler=webp
JXL_LIB_DEPENDS= libjxl.so:graphics/libjxl
JXL_VARS_OFF= jxl_disabler=jxl
XCF_VARS_OFF= xcf_disabler=xcf
LUAJIT_USES= luajit
LUAJIT_MESON_ON= -Dlua-interpreter=luajit
LUAJIT_PREVENTS= LUALANG
LUALANG_USES= lua:51,build,run
LUALANG_MESON_ON= -Dlua-interpreter=lua
LUALANG_PREVENTS= LUAJIT
OPENGL_USES= gl
OPENGL_USE= GL=gl
OPENGL_MESON_ON= -Dopengl=full
OPENGLES_USES= gl
OPENGLES_USE= GL=glesv2
OPENGLES_MESON_ON= -Dopengl=es-egl
NONE_MESON_ON= -Dopengl=none
SDL_USES= sdl
SDL_USE= SDL=sdl2
SDL_MESON_TRUE= sdl
MESON_ARGS+= -Dcrypto=openssl
IMF_DISABLERS= ${IBUS_DISABLER} ${SCIM_DISABLER} ${XIM_DISABLER}
MESON_ARGS+= -Decore-imf-loaders-disabler="${IMF_DISABLERS:ts,}"
EVAS_DISABLERS= json ${OPENJPEG_DISABLER} ${PDF_DISABLER} \
${PS_DISABLER} ${RAW_DISABLER} ${SVG_DISABLER} \
${AVIF_DISABLER} ${HEIF_DISABLER} ${WEBP_DISABLER} \
${XCF_DISABLER} ${JXL_DISABLER}
MESON_ARGS+= -Devas-loaders-disabler="${EVAS_DISABLERS:ts,}"
EFL_BINDINGS= ${LUA_BINDING} ${CXX_BINDING}
MESON_ARGS+= -Dbindings="${EFL_BINDINGS:ts,}"
.include <bsd.port.options.mk>
# Work-around build failure, which is caused by subtle problem in lld and -as-needed flag
.if ${ARCH} == i386
MESON_ARGS+= -Db_asneeded=false
.endif
.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH} == armv7 || ${ARCH} == i386 || ${ARCH} == powerpc || ${ARCH} == powerpc64 || ${ARCH} == powerpc64le
LIB_DEPENDS+= libunwind.so:devel/libunwind
.endif
.if ${ARCH:Marmv?}
BUILD_DEPENDS+= as:devel/binutils
CFLAGS+= -no-integrated-as
.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
post-stage:
@${ECHO_CMD} "autogenerating plist";
@cd ${STAGEDIR}${PREFIX} && ${FIND} * -type f -or -type l >> ${TMPPLIST}
.include <bsd.port.mk>
|