1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-04 22:33:27 +00:00
freebsd-ports/x11-toolkits/jx/Makefile

243 lines
6.3 KiB
Makefile
Raw Normal View History

# New ports collection makefile for: JX
# Date created: 30 July 1999
# Whom: Davec <davec@unforgettable.com>
#
# $FreeBSD$
#
PORTNAME= JX
PORTVERSION= 1.5.3
PORTREVISION= 1
CATEGORIES= x11-toolkits
MASTER_SITES= ftp://ftp.newplanetsoftware.com/pub/jx/source-1.5.3/ \
ftp://ftp.newplanetsoftware.com/pub/jcc/source/ \
ftp://ftp.newplanetsoftware.com/pub/medic/source/ \
ftp://ftp.cs.itu.edu.tr/pub/linux/x11/jx/
DISTNAME= ${PORTNAME}_source-${PORTVERSION}
MAINTAINER= lioux@FreeBSD.org
BUILD_DEPENDS= autoconf:${PORTSDIR}/devel/autoconf
(1) Add new variable, XFREE86_VERSION, to specify which version of XFree86 (3 or 4) to depend to when USE_XLIB is set. XFREE86_VERSION defaults to 3 for now, but adventurous users can override it in /etc/make.conf. When XFREE86_VERSION=3, USE_XLIB will add a dependency to x11/XFree86; when it is set to 4, the dependency will be to x11/XFree86-4-libraries. When XFREE86_VERSION=4, the PKG_IGNORE_DEPENDS and ALWAYS_BUILD_DEPENDS hacks to avoid messing with XFree86 are turned off. Since XFree86 version 4 includes some software that used to be separate ports, when XFREE86_VERSION=3 the following variables are provided: USE_DGS LIB_DEPENDS on x11/dgs USE_FREETYPE LIB_DEPENDS on print/freetype USE_MESA LIB_DEPENDS on graphics/Mesa3 USE_XPM LIB_DEPENDS on graphics/xpm When XFREE86_VERSION=4, these variables have no effect. The LIB_DEPENDS in the tree for the above four ports have all been converted to the USE_* counterparts. For your information, this is the count of the number of ports: USE_DGS 0 USE_FREETYPE 16 USE_MESA 36 USE_XPM 236 There is a new variable, XAWVER, which is set to 6 when XFREE86_VERSION=3 and 7 when XFREE86_VERSION=4. This is also passed to PLIST_SUB so ports that build Xaw based shared libraries can use this variable to substitute the shlib version number. There is also a provision of using a separate mtree file for XFREE86_VERSION=4, but that part is not enabled yet. Reviewed by: the ports list Tested by: make index (XFREE86_VERSION=3 only) (2) Add hebrew to list of valid categories. Submitted by: nbm
2000-08-03 09:28:57 +00:00
LIB_DEPENDS= png.4:${PORTSDIR}/graphics/png
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
USE_X_PREFIX= yes
(1) Add new variable, XFREE86_VERSION, to specify which version of XFree86 (3 or 4) to depend to when USE_XLIB is set. XFREE86_VERSION defaults to 3 for now, but adventurous users can override it in /etc/make.conf. When XFREE86_VERSION=3, USE_XLIB will add a dependency to x11/XFree86; when it is set to 4, the dependency will be to x11/XFree86-4-libraries. When XFREE86_VERSION=4, the PKG_IGNORE_DEPENDS and ALWAYS_BUILD_DEPENDS hacks to avoid messing with XFree86 are turned off. Since XFree86 version 4 includes some software that used to be separate ports, when XFREE86_VERSION=3 the following variables are provided: USE_DGS LIB_DEPENDS on x11/dgs USE_FREETYPE LIB_DEPENDS on print/freetype USE_MESA LIB_DEPENDS on graphics/Mesa3 USE_XPM LIB_DEPENDS on graphics/xpm When XFREE86_VERSION=4, these variables have no effect. The LIB_DEPENDS in the tree for the above four ports have all been converted to the USE_* counterparts. For your information, this is the count of the number of ports: USE_DGS 0 USE_FREETYPE 16 USE_MESA 36 USE_XPM 236 There is a new variable, XAWVER, which is set to 6 when XFREE86_VERSION=3 and 7 when XFREE86_VERSION=4. This is also passed to PLIST_SUB so ports that build Xaw based shared libraries can use this variable to substitute the shlib version number. There is also a provision of using a separate mtree file for XFREE86_VERSION=4, but that part is not enabled yet. Reviewed by: the ports list Tested by: make index (XFREE86_VERSION=3 only) (2) Add hebrew to list of valid categories. Submitted by: nbm
2000-08-03 09:28:57 +00:00
USE_XPM= yes
USE_BISON= yes
GNU_CONFIGURE= yes
CONFIGURE_WRKSRC= ${WRKDIR}
USE_GMAKE= yes
MAKE_ARGS= CC="${CC}" CXX="${CXX}" \
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
MAKE_ENV= JX_INSTALL_ROOT="${PREFIX}/bin" \
JX_LIB_ROOT="${PREFIX}/lib" \
PATH="${WRKSRC}/programs/makemake:${PATH}"
PLIST_SUB= LIBACE="${LIBACE}" \
LIBJTOOL="${LIBJTOOL}" \
LIBJX="${LIBJX}"
INSTALLS_SHLIB= yes
# Installs dir with proper permissions
INSTALL_DATA_DIR= ${INSTALL} -d -o ${SHAREOWN} -g ${SHAREGRP} -m 755
# the libraries
LIBFILES= libACE-5_0_2.so \
libjcore-1_5_3.a libjcore-1_5_3.so \
libjx-1_5_3.a libjx-1_5_3.so
# bin program files
PROGRAMFILES= lib/util/autodoc/autodoc programs/jxlayout/jxlayout \
programs/makemake/makemake
PROGRAMFILES_SCRIPT= jxlayout/jfdesign makemake/makecheck \
makemake/maketouch
# header files
INCLUDEDIR= jcore jx
INCLUDEDIR_ACE_WRKSRC= ACE/ACE_wrappers/ace
INCLUDEDIR_ACE_DIR= . CLASSIX
# documentation
DOCDIR_PREFIX= ${PREFIX}/share/doc/jx
DOCFILES= README FAQ LICENSE CHANGES
DOCDIRS= ACE jxlayout makemake
DOCDIRFILES= LICENSE README
# examples
EXAMPLEDIRS= tutorial
EXAMPLEDIR_PREFIX= ${PREFIX}/share/examples/jx
# xpm images
ICONDIRS= libjx/menu_image
ICONDIR_PREFIX= ${PREFIX}/share/jx
# additional configuration and header files
EXTRALIB_PREFIX= ${PREFIX}/lib/jx
EXTRALIBDIRS= jxlayout lib make
EXTRALIBFILES_JXLAYOUT= class_map need_font_list option_map
EXTRALIBFILES_MAKE_WRKSRC= include/make
EXTRALIBFILES_MAKE_DIR= . sys
# odd behavior
POSTBUILD_WRKSRC= makemake jxlayout
# post patch preprocessing
POSTPATCH_FILES= patch-aa
# post configure placement directory
POSTCONFIGURE_WRKSRC= include/make/sys
# configuration preprocessing
CONFIGURE_PREPROCESSING_FILES= FreeBSD-2.x_g++ FreeBSD-3.x_g++
.include <bsd.port.pre.mk>
.if ${OSVERSION} >= 300000
ALL_TARGET= freebsd3.x
LIBACE= 5
LIBJTOOL= 0
LIBJX= 1
.else
ALL_TARGET= freebsd2.x
LIBACE= 5.0
LIBJTOOL= 0.5
LIBJX= 1.5
.endif
.if defined(NOPORTDOCS)
PLIST_SUB+= PORTDOCS:="@comment "
.else
PLIST_SUB+= PORTDOCS:=
.endif # !defined(NOPORTDOCS)
post-patch:
.for i in ${CONFIGURE_PREPROCESSING_FILES}
@${CP} ${WRKSRC}/${POSTCONFIGURE_WRKSRC}/${i} ${WRKDIR}/${i}.in
@cd ${WRKDIR}; ${PATCH} -s ${i}.in < ${FILESDIR}/${POSTPATCH_FILES}
.endfor
pre-configure:
@${CP} ${FILESDIR}/configure.in ${WRKDIR}
@cd ${WRKDIR}; autoconf
post-configure:
.for i in ${CONFIGURE_PREPROCESSING_FILES}
@${CP} ${WRKDIR}/${i} ${WRKSRC}/${POSTCONFIGURE_WRKSRC}/${i}
.endfor
# odd behavior
post-build:
.for i in ${POSTBUILD_WRKSRC}
@cd ${WRKSRC}/programs/${i}; ${SETENV} ${MAKE_ENV} ${GMAKE} \
${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS}
.endfor
do-install:
.if !defined(NOPORTDOCS)
# Install all documentation
@${INSTALL_DATA_DIR} ${DOCDIR_PREFIX}
.for i in ${DOCFILES}
@${INSTALL_DATA} ${WRKSRC}/${i} ${DOCDIR_PREFIX}
.endfor
.for i in ${DOCDIRS}
@for j in ${DOCDIRFILES} ; \
do \
if [ -f ${WRKSRC}/programs/${i}/$${j} ]; \
then \
${INSTALL_DATA} ${WRKSRC}/programs/${i}/$${j} \
${DOCDIR_PREFIX}/$${j}_${i} ; \
elif [ -f ${WRKSRC}/${i}/$${j} ]; \
then \
${INSTALL_DATA} ${WRKSRC}/${i}/$${j} \
${DOCDIR_PREFIX}/$${j}_${i} ; \
fi ; \
done
.endfor
@${INSTALL_DATA} ${WRKSRC}/doc/* ${DOCDIR_PREFIX}
@${INSTALL_DATA} ${WRKSRC}/ACE/ACE_wrappers/VERSION \
${DOCDIR_PREFIX}/ACE_VERSION
# Install all examples
.for i in ${EXAMPLEDIRS}
@${INSTALL_DATA_DIR} ${EXAMPLEDIR_PREFIX}/${i} ; \
cd ${WRKSRC}/${i}; \
for j in * ; \
do \
if [ -f $${j} ]; \
then \
${INSTALL_DATA} $${j} ${EXAMPLEDIR_PREFIX}/${i} ; \
elif [ -d $${j} ]; \
then \
${INSTALL_DATA_DIR} ${EXAMPLEDIR_PREFIX}/${i}/$${j} ; \
for k in $${j}/* ; \
do \
${INSTALL_DATA} $${k} ${EXAMPLEDIR_PREFIX}/${i}/$${j} ; \
done; \
fi ; \
done
.endfor
.endif # !defined(NOPORTDOCS)
# Install all icons
.for i in ${ICONDIRS}
@${INSTALL_DATA_DIR} ${ICONDIR_PREFIX} ; \
for j in ${WRKSRC}/${i}/*.xpm ; \
do \
${INSTALL_DATA} $${j} ${ICONDIR_PREFIX} ; \
done
.endfor
# Install all header files
.for i in ${INCLUDEDIR}
@${INSTALL_DATA_DIR} ${PREFIX}/include/${i} ; \
for j in ${WRKSRC}/include/${i}/*.*h \
${WRKSRC}/include/${i}/*.tmpl \
${WRKSRC}/include/${i}/*.tmpls ; \
do \
if [ -f $${j} ]; \
then \
${INSTALL_DATA} $${j} ${PREFIX}/include/${i}/ ; \
fi ; \
done
.endfor
.for i in ${INCLUDEDIR_ACE_DIR}
@${INSTALL_DATA_DIR} ${PREFIX}/include/ace/${i} ; \
for j in ${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.cpp \
${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.h \
${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.i ; \
do \
if [ -f $${j} ]; \
then \
${INSTALL_DATA} $${j} ${PREFIX}/include/ace/${i}/ ; \
fi ; \
done
.endfor
# Install all libraries
.for i in ${LIBFILES}
@${INSTALL_PROGRAM} ${WRKSRC}/lib/${i} ${PREFIX}/lib
.endfor
# Install additional library files
.for i in ${EXTRALIBDIRS}
@${INSTALL_DATA_DIR} ${EXTRALIB_PREFIX}/${i}
.endfor
.for i in ${EXTRALIBFILES_JXLAYOUT}
@${INSTALL_DATA} ${WRKSRC}/programs/jxlayout/${i} \
${EXTRALIB_PREFIX}/jxlayout
.endfor
.for i in ${EXTRALIBFILES_MAKE_DIR}
@${INSTALL_DATA_DIR} ${EXTRALIB_PREFIX}/make/${i} ; \
for j in ${WRKSRC}/${EXTRALIBFILES_MAKE_WRKSRC}/${i}/* ; \
do \
if [ -f $${j} ]; \
then \
${INSTALL_DATA} $${j} ${EXTRALIB_PREFIX}/make/${i}/ ; \
fi ; \
done
.endfor
# Install all programs
.for i in ${PROGRAMFILES}
@${INSTALL_PROGRAM} ${WRKSRC}/${i} ${PREFIX}/bin
.endfor
.for i in ${PROGRAMFILES_SCRIPT}
@${INSTALL_SCRIPT} ${WRKSRC}/programs/${i} ${PREFIX}/bin
.endfor
post-install:
@${LN} -sf libACE-5_0_2.so \
${PREFIX}/lib/libACE-5_0_2.so.${LIBACE}
@${LN} -sf libjcore-1_5_3.so \
${PREFIX}/lib/libjcore-1_5_3.so.${LIBJX}
@${LN} -sf libjx-1_5_3.so \
${PREFIX}/lib/libjx-1_5_3.so.${LIBJX}
.for i in ${LIBFILES}
@${LN} -sf ../../${i} ${EXTRALIB_PREFIX}/lib/${i}
.endfor
.include <bsd.port.post.mk>