From ec7b92ea69967f44044f0433b7512487c45c01f3 Mon Sep 17 00:00:00 2001 From: Steve Price Date: Sun, 17 Sep 2000 21:26:15 +0000 Subject: Major overhaul of this port so that we cleanly build the other ports that depend on it. Submitted by: maintainer --- x11-toolkits/jx/Makefile | 97 +++++++++++++++++++------------------ x11-toolkits/jx/files/configure.in | 18 +++++++ x11-toolkits/jx/files/patch-ag | 42 ++++++++++++++++ x11-toolkits/jx/files/post-patch-aa | 29 ++++++++--- x11-toolkits/jx/pkg-comment | 2 +- 5 files changed, 133 insertions(+), 55 deletions(-) create mode 100644 x11-toolkits/jx/files/configure.in create mode 100644 x11-toolkits/jx/files/patch-ag (limited to 'x11-toolkits') diff --git a/x11-toolkits/jx/Makefile b/x11-toolkits/jx/Makefile index e461403ea675..31fdd01ba2c0 100644 --- a/x11-toolkits/jx/Makefile +++ b/x11-toolkits/jx/Makefile @@ -7,6 +7,7 @@ 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/ \ @@ -16,28 +17,26 @@ DISTNAME= ${PORTNAME}_source-${PORTVERSION} MAINTAINER= lioux@linf.unb.br +BUILD_DEPENDS= autoconf:${PORTSDIR}/devel/autoconf LIB_DEPENDS= png.4:${PORTSDIR}/graphics/png WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} USE_X_PREFIX= yes USE_XPM= yes -INSTALLS_SHLIB= yes USE_BISON= yes +GNU_CONFIGURE= yes +CONFIGURE_WRKSRC= ${WRKDIR} USE_GMAKE= yes -MAKE_ENV+= JX_INSTALL_ROOT="${PREFIX}/bin" \ +MAKE_ARGS= CC="${CC}" CXX="${CXX}" \ + CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" +MAKE_ENV= JX_INSTALL_ROOT="${PREFIX}/bin" \ JX_LIB_ROOT="${PREFIX}/lib" \ - X11PREFIX="${X11PREFIX}" \ - PATH="${WRKSRC}/programs/makemake:${PATH}" \ - PORTCFLAGS="${CFLAGS}" \ - PORTCXXFLAGS="${CXXFLAGS}" + PATH="${WRKSRC}/programs/makemake:${PATH}" PLIST_SUB= LIBACE="${LIBACE}" \ LIBJTOOL="${LIBJTOOL}" \ - LIBJX="${LIBJX}" \ - X11PREFIX="${X11PREFIX}" -EXTRA_PATCHES= ${WRKDIR}/patch-aa ${WRKDIR}/patch-ab - -X11PREFIX?= ${X11BASE} + LIBJX="${LIBJX}" +INSTALLS_SHLIB= yes # Installs dir with proper permissions INSTALL_DATA_DIR= ${INSTALL} -d -o ${SHAREOWN} -g ${SHAREGRP} -m 755 @@ -46,11 +45,10 @@ 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/makemake/makemake -PROGRAMFILES_SCRIPT= makemake/makecheck makemake/maketouch -# x11 program files -X11R6FILES= jxlayout/jxlayout -X11R6FILES_SCRIPT= jxlayout/jfdesign +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 @@ -75,9 +73,11 @@ EXTRALIBFILES_MAKE_DIR= . sys # odd behavior POSTBUILD_WRKSRC= makemake jxlayout # post patch preprocessing -POSTPATCH_PREPROCESS_FILES= patch-aa patch-ab -# post patch garbage colletion -POSTPATCH_CLEAN_WRKSRC= include/make include/make/sys +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 @@ -99,20 +99,26 @@ PLIST_SUB+= PORTDOCS:="@comment " PLIST_SUB+= PORTDOCS:= .endif # !defined(NOPORTDOCS) -pre-patch: -.for i in ${POSTPATCH_PREPROCESS_FILES} - @${SED} "s!X11PREFIX!${X11PREFIX}!g" ${FILESDIR}/${i} > ${WRKDIR}/${i} +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 -post-patch: -.for i in ${POSTPATCH_CLEAN_WRKSRC} - @cd ${WRKSRC}/${i} ; ${RM} *.orig +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} + @cd ${WRKSRC}/programs/${i}; ${SETENV} ${MAKE_ENV} ${GMAKE} \ + ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} .endfor do-install: @@ -155,7 +161,7 @@ do-install: do \ ${INSTALL_DATA} $${k} ${EXAMPLEDIR_PREFIX}/${i}/$${j} ; \ done; \ - fi; \ + fi ; \ done .endfor .endif # !defined(NOPORTDOCS) @@ -170,25 +176,28 @@ do-install: # Install all header files .for i in ${INCLUDEDIR} @${INSTALL_DATA_DIR} ${PREFIX}/include/${i} ; \ - for j in ${WRKSRC}/include/${i}/*.h ${WRKSRC}/include/${i}/*.th ; \ + for j in ${WRKSRC}/include/${i}/*.*h \ + ${WRKSRC}/include/${i}/*.tmpl \ + ${WRKSRC}/include/${i}/*.tmpls ; \ do \ - ${INSTALL_DATA} $${j} ${PREFIX}/include/${i} ; \ + 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} - @${INSTALL_DATA} ${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.cpp \ - ${PREFIX}/include/ace/${i}/ - @${INSTALL_DATA} ${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.h \ - ${PREFIX}/include/ace/${i}/ - @${INSTALL_DATA} ${WRKSRC}/${INCLUDEDIR_ACE_WRKSRC}/${i}/*.i \ - ${PREFIX}/include/ace/${i}/ -.endfor -# Install all *.tmpl* files - @for j in ${WRKSRC}/include/jcore/*.tmpl* ; \ + @${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 \ - ${INSTALL_DATA} $${j} ${PREFIX}/include/jcore ; \ + 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 @@ -208,7 +217,7 @@ do-install: if [ -f $${j} ]; \ then \ ${INSTALL_DATA} $${j} ${EXTRALIB_PREFIX}/make/${i}/ ; \ - fi; \ + fi ; \ done .endfor # Install all programs @@ -218,12 +227,6 @@ do-install: .for i in ${PROGRAMFILES_SCRIPT} @${INSTALL_SCRIPT} ${WRKSRC}/programs/${i} ${PREFIX}/bin .endfor -.for i in ${X11R6FILES} - @${INSTALL_PROGRAM} ${WRKSRC}/programs/${i} ${PREFIX}/bin -.endfor -.for i in ${X11R6FILES_SCRIPT} - @${INSTALL_SCRIPT} ${WRKSRC}/programs/${i} ${PREFIX}/bin -.endfor post-install: @${LN} -sf libACE-5_0_2.so \ diff --git a/x11-toolkits/jx/files/configure.in b/x11-toolkits/jx/files/configure.in new file mode 100644 index 000000000000..7c22ea3c9237 --- /dev/null +++ b/x11-toolkits/jx/files/configure.in @@ -0,0 +1,18 @@ +dnl Process this file with autoconf to produce a configure script. +AC_INIT(FreeBSD-3.x_g++.in) + +dnl Check for X library and header files +AC_PATH_X + +AC_SUBST(x_includes) +AC_SUBST(x_libraries) + +dnl Checks for typedefs, structures, and compiler characteristics. + +dnl Checks sizeof long +AC_CHECK_SIZEOF(long) + +dnl Checks sizeof int +AC_CHECK_SIZEOF(int) + +AC_OUTPUT(FreeBSD-2.x_g++ FreeBSD-3.x_g++) diff --git a/x11-toolkits/jx/files/patch-ag b/x11-toolkits/jx/files/patch-ag new file mode 100644 index 000000000000..bed4d7983e44 --- /dev/null +++ b/x11-toolkits/jx/files/patch-ag @@ -0,0 +1,42 @@ +--- misc/regex/Makefile.orig Tue Jun 13 21:56:06 2000 ++++ misc/regex/Makefile Tue Jun 13 21:58:03 2000 +@@ -4,13 +4,13 @@ + include ${JX_ROOT}/include/make/jx_config + CPPFLAGS= + +-# You probably want to take -DREDEBUG out of CFLAGS, and put something like ++# You probably want to take -DREDEBUG out of MYCFLAGS, and put something like + # -O in, *after* testing (-DREDEBUG strengthens testing by enabling a lot of + # internal assertion checking and some debugging facilities). + # Put -Dconst= in for a pre-ANSI compiler. + # Do not take -DPOSIX_MISTAKE out. + # REGCFLAGS isn't important to you (it's for my use in some special contexts). +-CFLAGS=-I. -DREDEBUG $(REGCFLAGS) $(J_REGEX_USE_BCOPY) $(J_BUILD_SHARED_LIB) # -DPOSIX_MISTAKE ++MYCFLAGS=-I. -DREDEBUG $(REGCFLAGS) $(J_REGEX_USE_BCOPY) $(J_BUILD_SHARED_LIB) # -DPOSIX_MISTAKE + + # If you have a pre-ANSI compiler, put -o into MKHFLAGS. If you want + # the Berkeley __P macro, put -b in. +@@ -35,10 +35,13 @@ + JUNKLINT=possible pointer alignment|null effect + + # arrangements to build forward-reference header files +-.SUFFIXES: .ih .h ++.SUFFIXES: .ih .h .c .o + .c.ih: + sh ./mkh $(MKHFLAGS) -p $< >$@ + ++.c.o: ++ $(CC) $(MYCFLAGS) -fPIC -DPIC -o $@ -c $< ++ + default: r + + # JAFL: this target builds the .o files for libjcore.* +@@ -70,7 +73,7 @@ + + # tester + re: $(OBJS) +- $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(LIBS) -o $@ ++ $(CC) $(MYCFLAGS) $(LDFLAGS) $(OBJS) $(LIBS) -o $@ + + # regression test + r: re tests diff --git a/x11-toolkits/jx/files/post-patch-aa b/x11-toolkits/jx/files/post-patch-aa index c7932e4d2877..4a25da9d6060 100644 --- a/x11-toolkits/jx/files/post-patch-aa +++ b/x11-toolkits/jx/files/post-patch-aa @@ -1,20 +1,35 @@ ---- include/make/sys/FreeBSD-3.x_g++.orig Tue Aug 31 20:36:33 1999 -+++ include/make/sys/FreeBSD-3.x_g++ Tue May 30 21:08:07 2000 @@ -6,11 +6,11 @@ # This tells us where to find the X libraries. -J_X11_LIB_DIR := -L/usr/X11R6/lib -+J_X11_LIB_DIR := -LX11PREFIX/lib ++J_X11_LIB_DIR := -L@x_libraries@ # Uncomment this and change it if your X11 headers are not in /usr/include/X11. -J_X11_INCLUDE_DIR := -I/usr/X11R6/include -+J_X11_INCLUDE_DIR := -IX11PREFIX/include ++J_X11_INCLUDE_DIR := -I@x_includes@ # Uncomment this if you want to compile libXpm into libjx -@@ -88,15 +88,15 @@ +@@ -66,7 +66,7 @@ + # Adjust these until everything compiles + + J_RAW_SYSTEM_STUFF := \ +- -DSIZEOF_LONG=4 -DSIZEOF_INT=4 ++ @DEFS@ + + # + # Nothing below this line should ever need to be changed. +@@ -79,7 +79,6 @@ + J_COMPILER_DEPEND_FLAGS_FOR_BISON := \ + -Wall -Wno-unused \ + -fno-implicit-templates -fno-rtti \ +- -O${J_OPTIMIZE_LEVEL} \ + -D_J_UNIX ${J_ISTRSTREAM_BROKEN} ${J_ARRAY_NEW_OVERRIDABLE} \ + ${J_RAW_SYSTEM_STUFF} + +@@ -88,15 +87,15 @@ # makemake variables @@ -30,8 +45,8 @@ CPPFLAGS = ${DEPENDFLAGS} -CFLAGS = ${J_MAKE_NEEDS_OUTPUT_ARG} -CXXFLAGS = ${J_MAKE_NEEDS_OUTPUT_ARG} -+CFLAGS = ${J_MAKE_NEEDS_OUTPUT_ARG} ${PORTCFLAGS} -+CXXFLAGS = ${J_MAKE_NEEDS_OUTPUT_ARG} ${PORTCXXFLAGS} ++CFLAGS := ${CFLAGS} ++CXXFLAGS := ${CXXFLAGS} # libraries to link diff --git a/x11-toolkits/jx/pkg-comment b/x11-toolkits/jx/pkg-comment index 662d4f1d4e2f..d5527adcf6a0 100644 --- a/x11-toolkits/jx/pkg-comment +++ b/x11-toolkits/jx/pkg-comment @@ -1 +1 @@ -A C++ application framework and widget library for X Window System +A C++ application framework and widget library for X Windows -- cgit v1.2.3