2017-11-02 15:46:39 +00:00
|
|
|
# $OpenBSD: meson.port.mk,v 1.12 2017/11/02 15:46:39 ajacoutot Exp $
|
2017-04-08 13:29:22 +00:00
|
|
|
|
2017-11-01 19:08:00 +00:00
|
|
|
BUILD_DEPENDS += devel/meson>=0.43.0p1
|
2017-04-08 13:29:22 +00:00
|
|
|
SEPARATE_BUILD ?= Yes
|
|
|
|
|
|
|
|
MODMESON_WANTCOLOR ?= No
|
|
|
|
.if ${MODMESON_WANTCOLOR:L} == "no"
|
|
|
|
CONFIGURE_ENV += TERM="dumb"
|
|
|
|
.endif
|
|
|
|
|
2017-10-28 13:27:05 +00:00
|
|
|
.for solib sover in ${SHARED_LIBS}
|
|
|
|
CONFIGURE_ENV += LIB${solib}_VERSION=${sover}
|
|
|
|
.endfor
|
|
|
|
|
2017-04-08 13:29:22 +00:00
|
|
|
.if empty(CONFIGURE_STYLE)
|
|
|
|
CONFIGURE_STYLE= meson
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if ! empty(INSTALL_STRIP)
|
|
|
|
CONFIGURE_ARGS += --strip
|
|
|
|
.endif
|
|
|
|
|
2017-11-02 15:13:37 +00:00
|
|
|
# don't use "-Wl,--no-undefined" nor "-zdefs" when linking"; OpenBSD does not
|
|
|
|
# link libc into shared-libraries by default to avoid binding libraries to
|
|
|
|
# specific libc majors, so those options have always suffered false positives
|
2017-06-25 11:16:38 +00:00
|
|
|
CONFIGURE_ARGS += -Db_lundef=false
|
|
|
|
|
2017-06-25 11:24:29 +00:00
|
|
|
# from ${LOCALBASE}/bin/meson:
|
|
|
|
# Warn if the locale is not UTF-8. This can cause various unfixable issues
|
|
|
|
# such as os.stat not being able to decode filenames with unicode in them.
|
|
|
|
# There is no way to reset both the preferred encoding and the filesystem
|
|
|
|
# encoding, so we can just warn about it.
|
|
|
|
MAKE_ENV += LC_CTYPE="en_US.UTF-8"
|
|
|
|
|
2017-04-08 13:29:22 +00:00
|
|
|
MODMESON_configure= ${SETENV} CC="${CC}" CFLAGS="${CFLAGS}" CXX="${CXX}" \
|
|
|
|
CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}" \
|
|
|
|
LC_CTYPE="en_US.UTF-8" ${CONFIGURE_ENV} \
|
|
|
|
${LOCALBASE}/bin/meson --buildtype=plain \
|
2017-04-27 09:02:32 +00:00
|
|
|
--prefix "${PREFIX}" --mandir="${PREFIX}/man" \
|
2017-04-27 09:00:01 +00:00
|
|
|
--sysconfdir="${SYSCONFDIR}" \
|
2017-11-02 15:46:39 +00:00
|
|
|
--localstatedir="${LOCALSTATEDIR}" \
|
2017-04-27 09:00:01 +00:00
|
|
|
${CONFIGURE_ARGS} ${WRKSRC} ${WRKBUILD}
|
2017-04-08 13:29:22 +00:00
|
|
|
|
|
|
|
.if !target(do-build)
|
|
|
|
do-build:
|
2017-06-25 11:07:19 +00:00
|
|
|
exec ${SETENV} ${MAKE_ENV} \
|
|
|
|
${LOCALBASE}/bin/ninja -C ${WRKBUILD} -v -j ${MAKE_JOBS}
|
2017-04-08 13:29:22 +00:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if !target(do-install)
|
|
|
|
do-install:
|
2017-06-25 11:07:19 +00:00
|
|
|
exec ${SETENV} ${MAKE_ENV} ${FAKE_SETUP} \
|
|
|
|
${LOCALBASE}/bin/ninja -C ${WRKBUILD} ${FAKE_TARGET}
|
2017-04-08 13:29:22 +00:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if !target(do-test)
|
|
|
|
do-test:
|
2017-06-25 11:07:19 +00:00
|
|
|
exec ${SETENV} ${ALL_TEST_ENV} \
|
|
|
|
${LOCALBASE}/bin/ninja -C ${WRKBUILD} ${TEST_TARGET}
|
2017-04-08 13:29:22 +00:00
|
|
|
.endif
|
2017-11-01 19:08:00 +00:00
|
|
|
|
|
|
|
# XXX hardcoded
|
|
|
|
# make our life easier
|
|
|
|
MODMESON_pre-configure += ln -sf ${LOCALBASE}/bin/python3.6 ${WRKDIR}/bin/python3
|