Changeset View
Changeset View
Standalone View
Standalone View
textproc/libxml2/Makefile
# Created by: Yukihiro Nakai <Nakai@technologist.com> | # Created by: Yukihiro Nakai <Nakai@technologist.com> | ||||
PORTNAME= libxml2 | PORTNAME= libxml2 | ||||
DISTVERSION= 2.9.12 | DISTVERSION= 2.9.13 | ||||
PORTREVISION?= 0 | PORTREVISION?= 0 | ||||
CATEGORIES?= textproc gnome | CATEGORIES?= textproc gnome | ||||
MASTER_SITES= http://xmlsoft.org/sources/ | MASTER_SITES= GNOME/sources/${PORTNAME}/${DISTVERSION:R}/ | ||||
DIST_SUBDIR= gnome2 | DIST_SUBDIR= gnome2 | ||||
MAINTAINER?= desktop@FreeBSD.org | MAINTAINER= desktop@FreeBSD.org | ||||
COMMENT?= XML parser library for GNOME | COMMENT?= XML parser library for GNOME | ||||
LICENSE= MIT TRIO | LICENSE= MIT | ||||
LICENSE_COMB= multi | |||||
LICENSE_NAME_TRIO= Trio License | |||||
LICENSE_FILE_MIT= ${WRKSRC}/COPYING | |||||
LICENSE_FILE_TRIO= ${FILESDIR}/LICENSE.TRIO | |||||
LICENSE_PERMS_TRIO= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept | |||||
USES+= compiler cpe iconv libtool pathfix pkgconfig shebangfix | USES+= cmake cpe iconv localbase:ldflags pathfix pkgconfig tar:xz | ||||
GNU_CONFIGURE= yes | |||||
CPE_VENDOR= xmlsoft | CPE_VENDOR= xmlsoft | ||||
SHEBANG_FILES= *.py */*.py */*/*.py | |||||
USE_LDCONFIG= yes | USE_LDCONFIG= yes | ||||
INSTALL_TARGET= install-strip | |||||
TEST_TARGET= check | |||||
CONFIGURE_ARGS?=--with-iconv=${ICONV_PREFIX} \ | |||||
--with-html-dir=${PREFIX}/share/doc \ | |||||
--with-html-subdir=${PORTNAME} \ | |||||
--without-icu \ | |||||
--with-lzma=/usr \ | |||||
--without-python | |||||
PLIST_SUB+= LIBVERSION=${DISTVERSION} | PLIST_SUB+= LIBVERSION=${DISTVERSION} | ||||
.if !defined(MASTERDIR) | # Don't build with Python support unless requested | ||||
CMAKE_${LIBXML2_SLAVE:DON:UOFF}=LIBXML2_WITH_PYTHON | |||||
tcberner: ```
CMAKE_OFF+=${LIBXML2_SLAVE:DLIBXML2_WITH_PYTHON}
```
should make it work without the `if`.
| |||||
Done Inline ActionsUnfortunately not as the slave port (or variable?) gets processed earlier root@freebsd-dev:/usr/ports/textproc/py-libxml2 # make -V CMAKE_ARGS ... -DLIBXML2_WITH_PYTHON:BOOL=ON -DLIBXML2_WITH_PYTHON:BOOL=OFF ... diizzy: Unfortunately not as the slave port (or variable?) gets processed earlier
```
root@freebsd… | |||||
OPTIONS_DEFINE= MEM_DEBUG SCHEMA THREAD_ALLOC THREADS VALIDATION \ | OPTIONS_DEFINE= DEBUG DOCS ICU MEM_DEBUG READLINE THREAD_ALLOC TEST | ||||
XMLLINT_HIST | OPTIONS_DEFAULT= ICU READLINE | ||||
OPTIONS_DEFAULT= SCHEMA VALIDATION THREADS | OPTIONS_SUB= yes | ||||
MEM_DEBUG_DESC= Memory debugging (DEVELOPERS ONLY!) | MEM_DEBUG_DESC= Memory debugging (DEVELOPERS ONLY!) | ||||
SCHEMA_DESC= XML schema support | |||||
THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!) | THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!) | ||||
VALIDATION_DESC= Validation support | READLINE_DESC= History for xmllint | ||||
XMLLINT_HIST_DESC= History for xmllint | |||||
MEM_DEBUG_CONFIGURE_WITH= mem-debug | DEBUG_CMAKE_BOOL= LIBXML2_WITH_DEBUG | ||||
SCHEMA_CONFIGURE_WITH= schemas | DOCS_EXTRA_PATCHES_OFF= ${PATCHDIR}/extra-patch-docs | ||||
THREAD_ALLOC_CONFIGURE_WITH= thread-alloc | ICU_LIB_DEPENDS= libicudata.so:devel/icu | ||||
THREADS_CONFIGURE_WITH= threads | ICU_CMAKE_BOOL= LIBXML2_WITH_ICU | ||||
Done Inline Actions^multiple dependencies on the same port. tcberner: ^multiple dependencies on the same port. | |||||
Done Inline ActionsI've seen both preferences when it comes to LIB_DEPENDS but I can trim that diizzy: I've seen both preferences when it comes to LIB_DEPENDS but I can trim that | |||||
VALIDATION_CONFIGURE_OFF= --without-valid | MEM_DEBUG_CAKE_BOOL= LIBXML2_WITH_MEM_DEBUG | ||||
XMLLINT_HIST_CONFIGURE_WITH= history | READLINE_LIB_DEPENDS= libreadline.so:devel/readline | ||||
READLINE_CMAKE_OFF= -DHAVE_LIBHISTORY=false -DHAVE_LIBREADLINE=false | |||||
THREAD_ALLOC_CMAKE_BOOL=LIBXML2_WITH_THREAD_ALLOC | |||||
TEST_CMAKE_BOOL= LIBXML2_WITH_TESTS | |||||
Done Inline Actions^again redundant dependencies tcberner: ^again redundant dependencies | |||||
Done Inline ActionsSame as above diizzy: Same as above | |||||
TEST_TEST_TARGET= test | |||||
.endif # !defined(MASTERDIR) | |||||
.if !defined(MASTERDIR) | |||||
post-install: | |||||
@${RM} -r ${STAGEDIR}${PREFIX}/share/gtk-doc | |||||
.endif | |||||
.include <bsd.port.pre.mk> | |||||
post-patch: | post-patch: | ||||
.for d in . doc doc/devhelp doc/examples | |||||
@${REINPLACE_CMD} -e '/^install-data-am:/ s|install-data-local||' \ | |||||
${WRKSRC}/${d}/Makefile.in | |||||
.endfor | |||||
.for f in catalog.c xmlcatalog.c xmllint.c doc/xmllint.1 | .for f in catalog.c xmlcatalog.c xmllint.c doc/xmllint.1 | ||||
@${REINPLACE_CMD} -e \ | @${REINPLACE_CMD} -e \ | ||||
's|/etc/xml/catalog|${LOCALBASE}/share/xml/catalog|g; \ | 's|/etc/xml/catalog|${LOCALBASE}/share/xml/catalog|g; \ | ||||
s|/etc/sgml/catalog|${LOCALBASE}/share/sgml/catalog|g' \ | s|/etc/sgml/catalog|${LOCALBASE}/share/sgml/catalog|g' \ | ||||
${WRKSRC}/${f} | ${WRKSRC}/${f} | ||||
.endfor | .endfor | ||||
.if ${CHOSEN_COMPILER_TYPE} == gcc | |||||
@${REINPLACE_CMD} -e 's/ -Wno-array-bounds//' ${WRKSRC}/configure | .if !defined(LIBXML2_SLAVE) | ||||
post-install: | |||||
${RM} ${STAGEDIR}${DOCSDIR}/xmlcatalog.1 | |||||
${RM} ${STAGEDIR}${DOCSDIR}/xmllint.1.bak | |||||
${RM} ${STAGEDIR}${DOCSDIR}/xmllint.1 | |||||
${RLN} ${STAGEDIR}${PREFIX}/lib/libxml2.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libxml2.so.2 | |||||
.endif | .endif | ||||
.include <bsd.port.post.mk> | .include <bsd.port.mk> |
should make it work without the if.