diff options
author | dmcmahill <dmcmahill> | 2001-04-25 14:55:59 +0000 |
---|---|---|
committer | dmcmahill <dmcmahill> | 2001-04-25 14:55:59 +0000 |
commit | ab1d195320582b570648be404a5a81cc49cf012e (patch) | |
tree | 13cebdccd544241a04b5492185e7f8718522b856 | |
parent | c1a842f6e334cc860f380ead9432bc50eb75c8ab (diff) | |
download | pkgsrc-ab1d195320582b570648be404a5a81cc49cf012e.tar.gz |
initial import of tmake-1.7
from pkg/DESCR:
tmake is an easy-to-use tool from Trolltech to create and maintain
makefiles for software projects. It can be a painful task to manage
makefiles manually, especially if you develop for more than one platform
or use more than one compiler. tmake automates and streamlines this
process and lets you spend your valuable time on writing code, not
makefiles.
Our main motivation for developing tmake was that we spent far too much
time maintaining makefiles for Qt,
our cross-platform GUI toolkit. Qt supports around 15 flavors of Unix,
Microsoft Windows, and around 15 different C++ compilers. We looked at
GNU autoconf, but it was Unix-specific and not flexible enough in our
opinion. Our makefile system also had to deal with Qt meta object compiler
(moc) issues. The moc program extracts meta information from C++ files and
generates a C++ file with data tables etc. It takes extra work to add
makefile rules for the moc and wanted to automate this task.
-rw-r--r-- | devel/tmake/Makefile | 55 | ||||
-rw-r--r-- | devel/tmake/distinfo | 7 | ||||
-rw-r--r-- | devel/tmake/patches/patch-aa | 23 | ||||
-rw-r--r-- | devel/tmake/patches/patch-ab | 32 | ||||
-rw-r--r-- | devel/tmake/patches/patch-ac | 13 | ||||
-rw-r--r-- | devel/tmake/pkg/DESCR | 16 | ||||
-rw-r--r-- | devel/tmake/pkg/PLIST | 25 |
7 files changed, 171 insertions, 0 deletions
diff --git a/devel/tmake/Makefile b/devel/tmake/Makefile new file mode 100644 index 00000000000..642d2035eeb --- /dev/null +++ b/devel/tmake/Makefile @@ -0,0 +1,55 @@ +# $NetBSD: Makefile,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ +# + +DISTNAME= tmake-1.7 +CATEGORIES= devel +MASTER_SITES= ftp://ftp.trolltech.com/freebies/tmake/ + +MAINTAINER= packages@netbsd.org +HOMEPAGE= http://www.trolltech.com/products/download/freebies/tmake.html +COMMENT= Cross-platform Makefile Tool + +RESTRICTED= No paid redistribution +NO_BIN_ON_CDROM= ${RESTRICTED} +NO_SRC_ON_CDROM= ${RESTRICTED} + +USE_PERL5= YES + +TMAKEPATH= ${PREFIX}/lib/tmake/netbsd-g++ +GLBASE= ${X11BASE} + +do-build: + ${MV} ${WRKSRC}/bin/tmake ${WRKSRC}/bin/tmake.BAK + ${SED} -e 's;@PERL5@;${PERL5};g' \ + -e 's;@TMAKEPATH@;${TMAKEPATH};g' \ + ${WRKSRC}/bin/tmake.BAK > ${WRKSRC}/bin/tmake + ${RM} ${WRKSRC}/bin/tmake.BAK + ${MV} ${WRKSRC}/lib/netbsd-g++/tmake.conf ${WRKSRC}/lib/netbsd-g++/tmake.conf.BAK + ${SED} -e 's;@LOCALBASE@;${LOCALBASE};g' \ + -e 's;@X11BASE@;${X11BASE};g' \ + -e 's;@GLBASE@;${GLBASE};g' \ + ${WRKSRC}/lib/netbsd-g++/tmake.conf.BAK > ${WRKSRC}/lib/netbsd-g++/tmake.conf + ${RM} ${WRKSRC}/lib/netbsd-g++/tmake.conf.BAK + ${MV} ${WRKSRC}/bin/progen ${WRKSRC}/bin/progen.BAK + ${SED} 's;/usr/bin/perl;${PERL5};g' \ + ${WRKSRC}/bin/progen.BAK > ${WRKSRC}/bin/progen + ${RM} ${WRKSRC}/bin/progen.BAK + +# avoid installing .orig files +pre-install: + ${RM} -f ${WRKSRC}/lib/netbsd-g++/*.orig + ${RM} -f ${WRKSRC}/lib/unix/*.orig + +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/bin/progen ${PREFIX}/bin/progen + ${INSTALL_SCRIPT} ${WRKSRC}/bin/tmake ${PREFIX}/bin/tmake + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/tmake + ${INSTALL_DATA} ${WRKSRC}/doc/* ${PREFIX}/share/doc/tmake + ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/tmake + ${INSTALL_DATA} ${WRKSRC}/example/* ${PREFIX}/share/examples/tmake + ${INSTALL_DATA_DIR} ${PREFIX}/lib/tmake/netbsd-g++ + ${INSTALL_DATA} ${WRKSRC}/lib/netbsd-g++/* ${PREFIX}/lib/tmake/netbsd-g++ + ${INSTALL_DATA_DIR} ${PREFIX}/lib/tmake/unix + ${INSTALL_DATA} ${WRKSRC}/lib/unix/* ${PREFIX}/lib/tmake/unix + +.include "../../mk/bsd.pkg.mk" diff --git a/devel/tmake/distinfo b/devel/tmake/distinfo new file mode 100644 index 00000000000..86dbea35737 --- /dev/null +++ b/devel/tmake/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ + +SHA1 (tmake-1.7.tar.gz) = 39df9db9be67293694b82a944b38f17659d29a83 +Size (tmake-1.7.tar.gz) = 46518 bytes +SHA1 (patch-aa) = daa9e10c3ae1dce66620657919e06b2db07049d1 +SHA1 (patch-ab) = b81f6022a9103a9ae0fe3d9adddbf57d374d51d9 +SHA1 (patch-ac) = 14c1cd48a8facdced5249c4ca0513b6b2a1c7799 diff --git a/devel/tmake/patches/patch-aa b/devel/tmake/patches/patch-aa new file mode 100644 index 00000000000..02d685d0805 --- /dev/null +++ b/devel/tmake/patches/patch-aa @@ -0,0 +1,23 @@ +$NetBSD: patch-aa,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ + +--- lib/netbsd-g++/tmake.conf.orig Thu Sep 7 02:21:26 2000 ++++ lib/netbsd-g++/tmake.conf Wed Apr 25 10:04:11 2001 +@@ -26,12 +26,12 @@ + TMAKE_CXXFLAGS_YACC = $$TMAKE_CFLAGS_YACC + +-TMAKE_INCDIR = +-TMAKE_LIBDIR = +-TMAKE_INCDIR_X11 = /usr/X11R6/include +-TMAKE_LIBDIR_X11 = /usr/X11R6/lib ++TMAKE_INCDIR = @LOCALBASE@/include ++TMAKE_LIBDIR = @LOCALBASE@/lib ++TMAKE_INCDIR_X11 = @X11BASE@/include ++TMAKE_LIBDIR_X11 = @X11BASE@/lib + TMAKE_INCDIR_QT = $(QTDIR)/include + TMAKE_LIBDIR_QT = $(QTDIR)/lib +-TMAKE_INCDIR_OPENGL = /usr/X11R6/include +-TMAKE_LIBDIR_OPENGL = /usr/X11R6/lib ++TMAKE_INCDIR_OPENGL = @GLBASE@/include ++TMAKE_LIBDIR_OPENGL = @GLBASE@/lib + + TMAKE_LINK = g++ diff --git a/devel/tmake/patches/patch-ab b/devel/tmake/patches/patch-ab new file mode 100644 index 00000000000..692bc2435e1 --- /dev/null +++ b/devel/tmake/patches/patch-ab @@ -0,0 +1,32 @@ +$NetBSD: patch-ab,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ + +--- lib/unix/generic.t.orig Sun Dec 3 21:26:06 2000 ++++ lib/unix/generic.t Wed Apr 25 09:24:19 2001 +@@ -32,5 +32,5 @@ + } + if ( Project("TMAKE_LIBDIR") ) { +- Project('TMAKE_LIBDIR_FLAGS *= -L$$TMAKE_LIBDIR'); ++ Project('TMAKE_LIBDIR_FLAGS *= -Wl,-R$$TMAKE_LIBDIR -L$$TMAKE_LIBDIR'); + } + if ( Config("qt") || Config("opengl") ) { +@@ -65,5 +65,5 @@ + Project("TMAKE_LIB_FLAG")) ) { + Project("TMAKE_LIBDIR_QT") && +- Project('TMAKE_LIBDIR_FLAGS *= -L$$TMAKE_LIBDIR_QT'); ++ Project('TMAKE_LIBDIR_FLAGS *= -Wl,-R$$TMAKE_LIBDIR_QT -L$$TMAKE_LIBDIR_QT'); + if (Config("thread") && Project("TMAKE_LIBS_QT_THREAD")) { + Project('TMAKE_LIBS *= $$TMAKE_LIBS_QT_THREAD'); +@@ -76,5 +76,5 @@ + AddIncludePath(Project("TMAKE_INCDIR_OPENGL")); + Project("TMAKE_LIBDIR_OPENGL") && +- Project('TMAKE_LIBDIR_FLAGS *= -L$$TMAKE_LIBDIR_OPENGL'); ++ Project('TMAKE_LIBDIR_FLAGS *= -Wl,-R$$TMAKE_LIBDIR_OPENGL -L$$TMAKE_LIBDIR_OPENGL'); + Project('TMAKE_LIBS *= $$TMAKE_LIBS_OPENGL'); + } +@@ -84,5 +84,5 @@ + if ( Config("x11lib") ) { + Project("TMAKE_LIBDIR_X11") && +- Project('TMAKE_LIBDIR_FLAGS *= -L$$TMAKE_LIBDIR_X11'); ++ Project('TMAKE_LIBDIR_FLAGS *= -Wl,-R$$TMAKE_LIBDIR_X11 -L$$TMAKE_LIBDIR_X11'); + Project('TMAKE_LIBS *= $$TMAKE_LIBS_X11'); + } diff --git a/devel/tmake/patches/patch-ac b/devel/tmake/patches/patch-ac new file mode 100644 index 00000000000..b4378f74719 --- /dev/null +++ b/devel/tmake/patches/patch-ac @@ -0,0 +1,13 @@ +$NetBSD: patch-ac,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ + +--- bin/tmake.orig Thu Dec 21 18:38:41 2000 ++++ bin/tmake Wed Apr 25 10:53:46 2001 +@@ -1,2 +1,2 @@ +-#!/usr/bin/perl ++#!@PERL5@ + ############################################################################ +@@ -68,3 +68,3 @@ + +-$project{"TMAKEPATH"} = $ENV{"TMAKEPATH"} . ";" . $ENV{"HOME"} . "/.tmake/"; ++$project{"TMAKEPATH"} = $ENV{"TMAKEPATH"} . ";" . $ENV{"HOME"} . "/.tmake/;@TMAKEPATH@"; + diff --git a/devel/tmake/pkg/DESCR b/devel/tmake/pkg/DESCR new file mode 100644 index 00000000000..2a3d7b95552 --- /dev/null +++ b/devel/tmake/pkg/DESCR @@ -0,0 +1,16 @@ +tmake is an easy-to-use tool from Trolltech to create and maintain +makefiles for software projects. It can be a painful task to manage +makefiles manually, especially if you develop for more than one platform +or use more than one compiler. tmake automates and streamlines this +process and lets you spend your valuable time on writing code, not +makefiles. + +Our main motivation for developing tmake was that we spent far too much +time maintaining makefiles for Qt, +our cross-platform GUI toolkit. Qt supports around 15 flavors of Unix, +Microsoft Windows, and around 15 different C++ compilers. We looked at +GNU autoconf, but it was Unix-specific and not flexible enough in our +opinion. Our makefile system also had to deal with Qt meta object compiler +(moc) issues. The moc program extracts meta information from C++ files and +generates a C++ file with data tables etc. It takes extra work to add +makefile rules for the moc and wanted to automate this task. diff --git a/devel/tmake/pkg/PLIST b/devel/tmake/pkg/PLIST new file mode 100644 index 00000000000..8d038caf498 --- /dev/null +++ b/devel/tmake/pkg/PLIST @@ -0,0 +1,25 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2001/04/25 14:55:59 dmcmahill Exp $ +bin/progen +bin/tmake +lib/tmake/${LOWER_OPSYS}-g++/app.t +lib/tmake/${LOWER_OPSYS}-g++/lib.t +lib/tmake/${LOWER_OPSYS}-g++/subdirs.t +lib/tmake/${LOWER_OPSYS}-g++/tmake.conf +lib/tmake/unix/app.t +lib/tmake/unix/generic.t +lib/tmake/unix/lib.t +lib/tmake/unix/subdirs.t +share/doc/tmake/m-linux-gcc.html +share/doc/tmake/m-win32-msvc.html +share/doc/tmake/tmake.html +share/doc/tmake/tmake_ref.html +share/examples/tmake/hello.cpp +share/examples/tmake/hello.h +share/examples/tmake/hello.pro +share/examples/tmake/main.cpp +share/examples/tmake/wc.t +@dirrm share/examples/tmake +@dirrm share/doc/tmake +@dirrm lib/tmake/${LOWER_OPSYS}-g++ +@dirrm lib/tmake/unix +@dirrm lib/tmake |