From c9d8d301e9855054904891a0e13306938817488a Mon Sep 17 00:00:00 2001 From: Will Andrews Date: Fri, 9 Jun 2000 20:39:30 +0000 Subject: Major overhaul to make this port work well again. MAINTAINER change is confirmed by the lack of submissions for updates by the original creator. Port now depends on the recently-added x11-toolkits/jx and friends ports. MASTER_SITES moved; make port depend on several other ports instead of building things itself, allowing for modularity. PR: 19042 Submitted by: Mario Sergio Fujikawa Ferriera --- devel/codecrusader/Makefile | 173 +++++++++++++++++++++++--------------- devel/codecrusader/distinfo | 5 -- devel/codecrusader/files/patch-ac | 122 ++++++++------------------- devel/codecrusader/files/patch-af | 26 ++++++ devel/codecrusader/files/patch-ag | 29 +++++++ devel/codecrusader/pkg-comment | 2 +- devel/codecrusader/pkg-descr | 5 +- devel/codecrusader/pkg-plist | 41 +++------ 8 files changed, 214 insertions(+), 189 deletions(-) create mode 100644 devel/codecrusader/files/patch-af create mode 100644 devel/codecrusader/files/patch-ag (limited to 'devel/codecrusader') diff --git a/devel/codecrusader/Makefile b/devel/codecrusader/Makefile index f948c4251e69..cb196648bf89 100644 --- a/devel/codecrusader/Makefile +++ b/devel/codecrusader/Makefile @@ -8,88 +8,129 @@ PORTNAME= code_crusader PORTVERSION= 2.1.4 CATEGORIES= devel -MASTER_SITES= ftp://ftp.its.caltech.edu/pub/jafl/programs/jcc/source/ \ - ftp://ftp.its.caltech.edu/pub/jafl/jx/source-1.5.3/ -DISTFILES= ${PORTNAME}_source-${PORTVERSION}${EXTRACT_SUFX} \ - JTree_source-1.1.7.tar.gz \ - JX_source-1.5.3.tar.gz \ - JToolBar_source-0.5.4.tar.gz +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= davec@unforgettable.com +MAINTAINER= lioux@linf.unb.br -LIB_DEPENDS= Xpm.4:${PORTSDIR}/graphics/xpm +BUILD_DEPENDS= nonexistent:${JXPORT}:patch +LIB_DEPENDS= jtoolbar-0_5_4.0:${PORTSDIR}/x11-toolkits/libjtoolbar +RUN_DEPENDS= exctags:${PORTSDIR}/devel/ctags WRKSRC= ${WRKDIR}/JX-1.5.3 USE_XLIB= yes -PLIST_SUB+= "LIBACE=${LIBACE}" \ - "LIBJTOOL=${LIBJTOOL}" \ - "LIBJSEARCH=${LIBJSEARCH}" \ - "LIBJTREE=${LIBJTREE}" \ - "LIBJX=${LIBJX}" -USE_GMAKE= yes USE_BISON= yes -MAKE_ENV= JX_INSTALL_ROOT=${PREFIX}/bin \ - JX_LIB_ROOT=${PREFIX}/lib - -.if !defined(CODEMEDIC) || (${CODEMEDIC} != no && ${CODEMEDIC} != NO) -pre-fetch: - @ ${ECHO_MSG} - @ ${ECHO_MSG} Code Medic is a gdb frontend to complement - @ ${ECHO_MSG} Code Crusader. It is compiled in this port - @ ${ECHO_MSG} with Code Crusader by default. - @ ${ECHO_MSG} If you would prefer not compiling it in - @ ${ECHO_MSG} then set the variable CODEMEDIC=no. - @ ${ECHO_MSG} - @ ${ECHO_MSG} Compiling Code Crusader with Code Medic. - @ ${ECHO_MSG} Installing into ${PREFIX} - @ ${ECHO_MSG} -MASTER_SITES+= ftp://ftp.cco.caltech.edu/pub/glenn/Medic/source/ \ - ftp://ftp.cco.caltech.edu/pub/glenn/Arrow/source/ -DISTFILES+= Code_Medic_source-1.0.5.tar.gz \ - JSearch_source-0.5.6.tar.gz -.endif +USE_PERL5= yes +USE_GMAKE= yes +MAKE_ENV= JX_INSTALL_ROOT="${PREFIX}/bin" \ + JX_LIB_ROOT="${PREFIX}/lib" \ + X11PREFIX="${X11PREFIX}" \ + PORTCFLAGS="${CFLAGS}" \ + PORTCXXFLAGS="${CXXFLAGS}" \ + PORTINCLUDES="${PORTINCLUDES}" \ + PORTLIBS="${PORTLIBS}" +PLIST_SUB= PORTNAME="${PORTNAME}" -.if !defined(CODEMEDIC) || (${CODEMEDIC} != no && ${CODEMEDIC} != NO) -post-patch: - @${PATCH} ${PATCH_ARGS} < ${FILESDIR}/patch-medic - @${PATCH} ${PATCH_ARGS} < ${FILESDIR}/patch-jsearch -.endif +# Proper X11R6 Prefix +# Change it, if you need it +X11PREFIX?= ${X11BASE} + +# Make environment +PORTINCLUDES= -I${LOCALBASE}/include -I${LOCALBASE}/include/jx \ + -I${LOCALBASE}/include/jtoolbar \ + -I${LOCALBASE}/include/jtree \ + -I${LOCALBASE}/share/jx +PORTLIBS= -L${LOCALBASE}/lib + +# Installs dir with proper permissions +INSTALL_DATA_DIR= ${INSTALL} -d -o ${SHAREOWN} -g ${SHAREGRP} -m 755 +# program files +PROGRAMFILES= code_crusader/jcc +PROGRAMFILES_SCRIPT= code_crusader/dirdiff +# documents +DOCFILES= FAQ LICENSE README.binary +DOCDIR_PREFIX= ${PREFIX}/share/doc/${PORTNAME} +# additional configuration and header files +EXTRALIB_PREFIX= ${PREFIX}/lib/jx +# examples +EXAMPLEDIRS= desktop macros +EXAMPLEDIR_PREFIX= ${PREFIX}/share/examples/${PORTNAME} +# main jx distribution port wrksrc +JXPORT= ${PORTSDIR}/x11-toolkits/jx +JXPORT_WRKSRC= ${JXPORT}/work/JX-1.5.3 +# main jx distribution files needed for building +COPY_JXDIRS= include lib libjcore +COPY_JXFILES= Makefile +JX_MAKE_CONSTANTS= jtoolbar_constants jtree_constants .include + .if ${OSVERSION} >= 300000 ALL_TARGET= freebsd3.x -LIBACE= 4 -LIBJTOOL= 0 -LIBJSEARCH= 0 -LIBJTREE= 1 -LIBJX= 1 .else ALL_TARGET= freebsd2.x -LIBACE= 4.6 -LIBJTOOL= 0.5 -LIBJSEARCH= 0.5 -LIBJTREE= 1.1 -LIBJX= 1.5 .endif -do-install: - @ ${LN} -sf ${PREFIX}/lib/libACE-4_6.so \ - ${PREFIX}/lib/libACE-4_6.so.${LIBACE}; - @ ${LN} -sf ${PREFIX}/lib/libjcore-1_5_2.so \ - ${PREFIX}/lib/libjcore-1_5_2.so.${LIBJX}; - @ ${LN} -sf ${PREFIX}/lib/libjtoolbar-0_5_3.so \ - ${PREFIX}/lib/libjtoolbar-0_5_3.so.${LIBJTOOL}; - @ ${LN} -sf ${PREFIX}/lib/libjtree-1_1_5.so \ - ${PREFIX}/lib/libjtree-1_1_5.so.${LIBJTREE}; - @ ${LN} -sf ${PREFIX}/lib/libjx-1_5_2.so \ - ${PREFIX}/lib/libjx-1_5_2.so.${LIBJX}; -.if !defined(CODEMEDIC) || (${CODEMEDIC} != no && ${CODEMEDIC} != NO) - @ ${LN} -sf ${PREFIX}/lib/libjsearch-0_5_6.so \ - ${PREFIX}/lib/libjsearch-0_5_6.so.${LIBJSEARCH}; -.endif +.if defined(NOPORTDOCS) +PLIST_SUB+= PORTDOCS:="@comment " +.else +PLIST_SUB+= PORTDOCS:= +.endif # !defined(NOPORTDOCS) + +post-extract: +.for i in ${COPY_JXDIRS} + @${CP} -Rp ${JXPORT_WRKSRC}/${i} ${WRKSRC} +.endfor +.for i in ${COPY_JXFILES} + @${CP} -p ${JXPORT_WRKSRC}/${i} ${WRKSRC} +.endfor -post-install: - @ ${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${LDCONFIG} -m ${PREFIX}/lib +pre-build: +.for i in ${JX_MAKE_CONSTANTS} + @${LN} -sf ${EXTRALIB_PREFIX}/make/${i} ${WRKSRC}/include/make +.endfor + +post-build: + @cd ${WRKSRC}/programs/${PORTNAME}; ${SETENV} ${MAKE_ENV} makemake; \ + ${SETENV} ${MAKE_ENV} ${GMAKE} + +do-install: +.if !defined(NOPORTDOCS) +# Install all documentation + @${INSTALL_DATA_DIR} ${DOCDIR_PREFIX} +.for i in ${DOCFILES} + @${INSTALL_DATA} ${WRKSRC}/programs/${PORTNAME}/${i} ${DOCDIR_PREFIX} +.endfor +# Install all examples +.for i in ${EXAMPLEDIRS} + @${INSTALL_DATA_DIR} ${EXAMPLEDIR_PREFIX}/${i} ; \ + cd ${WRKSRC}/programs/${PORTNAME}/${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 programs +.for i in ${PROGRAMFILES} + @${INSTALL_PROGRAM} ${WRKSRC}/programs/${i} ${PREFIX}/bin +.endfor +.for i in ${PROGRAMFILES_SCRIPT} + @${INSTALL_SCRIPT} ${WRKSRC}/programs/${i} ${PREFIX}/bin +.endfor .include diff --git a/devel/codecrusader/distinfo b/devel/codecrusader/distinfo index 864140b1f318..54336f1e7aa3 100644 --- a/devel/codecrusader/distinfo +++ b/devel/codecrusader/distinfo @@ -1,6 +1 @@ MD5 (code_crusader_source-2.1.4.tar.gz) = 4c942fdf1f7019e83939f45cf2b4b7a8 -MD5 (JTree_source-1.1.7.tar.gz) = 79749772c85d3234409d8a4bcac2ffd5 -MD5 (JX_source-1.5.3.tar.gz) = e35ea2a77c777d96c3d9b566254d2562 -MD5 (JToolBar_source-0.5.4.tar.gz) = 254e778a3078a1479fab4b44ea0c964b -MD5 (Code_Medic_source-1.0.5.tar.gz) = a8817158c6b679c9e64c021e27878228 -MD5 (JSearch_source-0.5.6.tar.gz) = b639b7173fe50dab0d17b88fd1d6a472 diff --git a/devel/codecrusader/files/patch-ac b/devel/codecrusader/files/patch-ac index 6cdf361987e8..c0fa7404c1b1 100644 --- a/devel/codecrusader/files/patch-ac +++ b/devel/codecrusader/files/patch-ac @@ -1,98 +1,50 @@ ---- programs/code_crusader/Make.header.orig Tue Sep 21 13:23:17 1999 -+++ programs/code_crusader/Make.header Fri Dec 10 11:31:35 1999 -@@ -73,11 +73,10 @@ +--- programs/code_crusader/Make.header.orig Tue Sep 21 17:23:17 1999 ++++ programs/code_crusader/Make.header Sun Jun 4 14:56:56 2000 +@@ -30,6 +30,7 @@ + -I${JTOOLBARDIR} \ + -I${JXIMAGEDIR} \ + -I${ACE_ROOT} \ ++ -I${JXDIR} \ + ${J_X11_INCLUDE_DIR} + + # other constants +@@ -52,28 +53,17 @@ + + # library dependencies + +-ifdef J_BUILD_SHARED_LIB +- LIB_DEPS := ${JLIBDIR}/libjcore-${JX_LIB_VERSION}.so \ +- ${JLIBDIR}/libjx-${JX_LIB_VERSION}.so \ +- ${JLIBDIR}/libjtree-${JTREE_LIB_VERSION}.so \ +- ${JLIBDIR}/libjtoolbar-${JTOOLBAR_LIB_VERSION}.so +-else +- LIB_DEPS := ${JLIBDIR}/libjcore-${JX_LIB_VERSION}.a \ +- ${JLIBDIR}/libjx-${JX_LIB_VERSION}.a \ +- ${JLIBDIR}/libjtree-${JTREE_LIB_VERSION}.a \ +- ${JLIBDIR}/libjtoolbar-${JTOOLBAR_LIB_VERSION}.a +-endif + + # make variables + +-LOADLIBES := -L${JLIBDIR} ${ljtoolbar} ${ljtree} \ ++LOADLIBES := -L${JLIBDIR} ${PORTLIBS} ${ljtoolbar} ${ljtree} \ + ${ljx} ${ljcore} ${J_SYS_LIBS} + LDFLAGS := + ##### .PHONY : default -default: libs jcc ctags -+default: libs jcc ++default: jcc .PHONY : Makefiles Makefiles: -- @cd ctags; ./configure > /dev/null - - # - # required libraries -@@ -98,33 +97,19 @@ - @cd ${JTOOLBARLIBDIR}; ${MAKE} TOUCHSTRING=${TOUCHSTRING} touch - - # --# ctags --# -- --.PHONY : ctags --ctags: -- @cd ctags; ${MAKE}; strip ctags -- --# - # install binaries +@@ -110,7 +100,7 @@ # .PHONY : jxinstall -jxinstall: jcc ctags -+jxinstall: jcc ++jxinstall_not: jcc ctags @strip jcc ifneq (${J_WANT_INSTALL},0) -- @mv jcc ctags/ctags ${JX_INSTALL_ROOT}/ -- ifeq (${shell whoami},root) -- @cp ctags/ctags.1 /usr/man/man1/ -- endif -+ @mv jcc ${JX_INSTALL_ROOT}/ - endif - - .PHONY : jxuninstall - jxuninstall: -- @${RM} ${JX_INSTALL_ROOT}/jcc ${JX_INSTALL_ROOT}/ctags -- ifeq (${shell whoami},root) -- @${RM} /usr/man/man1/ctags.1 -- endif -+ @${RM} ${JX_INSTALL_ROOT}/jcc - - # - # remove binaries -@@ -132,7 +117,6 @@ - - .PHONY : tidy - tidy:: -- @cd ctags; ${MAKE} clean > /dev/null - - # makemake's clean invokes tidy, which does everything necessary - -@@ -145,14 +129,13 @@ - - .PHONY : source - source: -- @-cd ctags; ${MAKE} clean > /dev/null - @cd ${J_DISTR_TAR_DIR}; \ -- tar -czf ${SRC_TAR_FILE} ${filter-out %.o %~ %ctags, \ -+ tar -czf ${SRC_TAR_FILE} ${filter-out %.o %~, \ - ${shell cd ${J_DISTR_TAR_DIR}; echo \ - ${addprefix ${SRC_FILE_DIR}/, \ - README.* LICENSE FAQ Make.* *.fd \ - ${EXTRA_FILES} macros/* desktop/* \ -- code/* rpm/* ctags/* } }} -+ code/* rpm/* } }} - - # - # binary distributions -@@ -179,18 +162,15 @@ - # distr_sub (JCC_DISTR_TAR_FILE, MKMK_TARGET) - - .PHONY : distr_sub --distr_sub: ctags -+distr_sub: - @strip jcc - @${RM} -r ${JCC} -- @mkdir ${JCC} ${JCC}/ctags -+ @mkdir ${JCC} - @ln -s ../README.binary ${JCC}/README - @ln -s ../jcc ${JCC}/jcc - @ln -s ../macros ${JCC}/macros - @ln -s ../desktop ${JCC}/desktop -- @ln -s ../../ctags/ctags ${JCC}/ctags/ctags - @cp LICENSE FAQ ${EXTRA_FILES} ${JCC}/ -- @cp ctags/COPYING ctags/FAQ ctags/NEWS ctags/QUOTES ctags/README \ -- ctags/ctags.1 ${JCC}/ctags/ - @cd ${MKMKDIR}; \ - ${MAKE} JCC_TAR_DIR=${JCC_TAR_DIR}/${JCC} ${MKMK_TARGET} - @tar -chf ${JCC_DISTR_TAR_FILE} ${JCC}/* + @mv jcc ctags/ctags ${JX_INSTALL_ROOT}/ diff --git a/devel/codecrusader/files/patch-af b/devel/codecrusader/files/patch-af new file mode 100644 index 000000000000..2ea5a415eb43 --- /dev/null +++ b/devel/codecrusader/files/patch-af @@ -0,0 +1,26 @@ +--- Makefile.orig Tue May 30 13:04:38 2000 ++++ Makefile Tue May 30 13:09:41 2000 +@@ -264,11 +264,6 @@ + include/make/jx_config + @ln -s ../../include/missing_proto/jMissingProto_empty.h \ + include/jcore/jMissingProto.h +- @ln -s config-freebsd.h \ +- ACE/ACE_wrappers/ace/config.h +- @ln -s platform_freebsd.GNU \ +- ACE/ACE_wrappers/include/makeinclude/platform_macros.GNU +- @${INSTALL_CMD} + + .PHONY : freebsd3.x + freebsd3.x: prep +@@ -276,11 +271,6 @@ + include/make/jx_config + @ln -s ../../include/missing_proto/jMissingProto_empty.h \ + include/jcore/jMissingProto.h +- @ln -s config-freebsd-pthread.h \ +- ACE/ACE_wrappers/ace/config.h +- @ln -s platform_freebsd_pthread.GNU \ +- ACE/ACE_wrappers/include/makeinclude/platform_macros.GNU +- @${INSTALL_CMD} + + # + # SunOS 4.x diff --git a/devel/codecrusader/files/patch-ag b/devel/codecrusader/files/patch-ag new file mode 100644 index 000000000000..02fff3da431c --- /dev/null +++ b/devel/codecrusader/files/patch-ag @@ -0,0 +1,29 @@ +diff -ru code.ORIG/CBFnMenuUpdater.cc code/CBFnMenuUpdater.cc +--- programs/code_crusader/code.ORIG/CBFnMenuUpdater.cc Wed Sep 15 20:11:57 1999 ++++ programs/code_crusader/code/CBFnMenuUpdater.cc Sat Nov 6 13:22:12 1999 +@@ -21,13 +21,13 @@ + #include + #include + +-static const JCharacter* kCheckVersionCmd = "ctags --version"; ++static const JCharacter* kCheckVersionCmd = "exctags --version"; + static const JCharacter* kVersionMarker = "Exuberant Ctags"; +-static const JCharacter* kCheckOptionsCmd = "ctags --help"; ++static const JCharacter* kCheckOptionsCmd = "exctags --help"; + static const JCharacter* kOptionMarker = "--filter-terminator"; + + static const JCharacter* kGetFnListCmd = +- "ctags --filter=yes --filter-terminator=\f" ++ "exctags --filter=yes --filter-terminator=\f" + " --c-types=f --eiffel-types=f --fortran-types=psf --java-types=m" + " --format=1 --excmd=number --sort=no"; + +@@ -122,7 +122,7 @@ + itsIsActiveFlag = kFalse; + + (JGetUserNotification())->ReportError( +- "ctags is not responding correctly, " ++ "exctags is not responding correctly, " + "so the Function menu will not work."); + } + } diff --git a/devel/codecrusader/pkg-comment b/devel/codecrusader/pkg-comment index ea9a767434f9..c977274958be 100644 --- a/devel/codecrusader/pkg-comment +++ b/devel/codecrusader/pkg-comment @@ -1 +1 @@ -Code Crusader is a complete code development environment (IDE) for X +Code Crusader is a UNIX IDE for X inspired by MetroWerks CodeWarrior diff --git a/devel/codecrusader/pkg-descr b/devel/codecrusader/pkg-descr index 62328784db73..098ed5c65f62 100644 --- a/devel/codecrusader/pkg-descr +++ b/devel/codecrusader/pkg-descr @@ -17,7 +17,4 @@ Some of the features include: Support for scrolling via wheel mice. API's for extending Code Crusader -WWW: http://www.cco.caltech.edu/~jafl/jcc/ - --Davec -davec@unforgettable.com +WWW: http://www.newplanetsoftware.com/jcc/ diff --git a/devel/codecrusader/pkg-plist b/devel/codecrusader/pkg-plist index 32ec75cc5c5b..9984bce6d67a 100644 --- a/devel/codecrusader/pkg-plist +++ b/devel/codecrusader/pkg-plist @@ -1,29 +1,14 @@ -bin/class_map bin/jcc -bin/jfdesign -bin/jxlayout -bin/makecheck -bin/makemake -bin/maketouch -bin/need_font_list -bin/option_map -bin/medic -lib/libACE-4_6.so -lib/libACE-4_6.so.%%LIBACE%% -lib/libjcore-1_5_2.a -lib/libjcore-1_5_2.so -lib/libjcore-1_5_2.so.%%LIBJX%% -lib/libjtoolbar-0_5_3.a -lib/libjtoolbar-0_5_3.so -lib/libjtoolbar-0_5_3.so.%%LIBJTOOL%% -lib/libjtree-1_1_5.a -lib/libjtree-1_1_5.so -lib/libjtree-1_1_5.so.%%LIBJTREE%% -lib/libjx-1_5_2.a -lib/libjx-1_5_2.so -lib/libjx-1_5_2.so.%%LIBJX%% -lib/libjsearch-0_5_6.a -lib/libjsearch-0_5_6.so -lib/libjsearch-0_5_6.so.%%LIBJSEARCH%% -@exec /sbin/ldconfig -m %D/lib -@unexec /sbin/ldconfig -R +bin/dirdiff +%%PORTDOCS:%%share/doc/%%PORTNAME%%/FAQ +%%PORTDOCS:%%share/doc/%%PORTNAME%%/LICENSE +%%PORTDOCS:%%share/doc/%%PORTNAME%%/README.binary +%%PORTDOCS:%%share/examples/%%PORTNAME%%/desktop/README +%%PORTDOCS:%%share/examples/%%PORTNAME%%/desktop/fancy.xpm +%%PORTDOCS:%%share/examples/%%PORTNAME%%/desktop/plain.xpm +%%PORTDOCS:%%share/examples/%%PORTNAME%%/macros/FORTRAN_indenting +%%PORTDOCS:%%share/examples/%%PORTNAME%%/macros/Java +%%PORTDOCS:%%@dirrm share/examples/%%PORTNAME%%/macros +%%PORTDOCS:%%@dirrm share/examples/%%PORTNAME%%/desktop +%%PORTDOCS:%%@dirrm share/examples/%%PORTNAME%% +%%PORTDOCS:%%@dirrm share/doc/%%PORTNAME%% -- cgit v1.2.3