From f2a372db40e4f83e2f272c3edb284901c037a339 Mon Sep 17 00:00:00 2001 From: markus reichelt Date: Sun, 6 Nov 2011 13:04:47 -0200 Subject: development/tcc: Added some fixes. Signed-off-by: Niels Horn --- development/tcc/makefile_destdir.patch | 97 ++++++++++++++++++++++++++++++++++ development/tcc/slack-desc | 2 +- development/tcc/tcc.SlackBuild | 27 ++++++---- development/tcc/tcc.info | 2 +- 4 files changed, 117 insertions(+), 11 deletions(-) create mode 100644 development/tcc/makefile_destdir.patch (limited to 'development/tcc') diff --git a/development/tcc/makefile_destdir.patch b/development/tcc/makefile_destdir.patch new file mode 100644 index 000000000000..8d62c94214da --- /dev/null +++ b/development/tcc/makefile_destdir.patch @@ -0,0 +1,97 @@ +Index: tcc-0.9.25/Makefile +=================================================================== +--- tcc-0.9.25.orig/Makefile ++++ tcc-0.9.25/Makefile +@@ -13,6 +13,10 @@ ifneq ($(GCC_MAJOR),2) + CFLAGS+=-fno-strict-aliasing + endif + ++ifndef ($(DESTDIR)) ++DESTDIR = / ++endif ++ + ifeq ($(ARCH),i386) + CFLAGS+=-mpreferred-stack-boundary=2 + ifeq ($(GCC_MAJOR),2) +@@ -197,48 +201,48 @@ INSTALL=install + + ifndef CONFIG_WIN32 + install: $(PROGS) $(LIBTCC1) $(BCHECK_O) libtcc.a tcc.1 tcc-doc.html +- mkdir -p "$(bindir)" +- $(INSTALL) -s -m755 $(PROGS) "$(bindir)" +- mkdir -p "$(mandir)/man1" +- $(INSTALL) tcc.1 "$(mandir)/man1" +- mkdir -p "$(tccdir)" +- mkdir -p "$(tccdir)/include" ++ mkdir -p "$(DESTDIR)/$(bindir)" ++ $(INSTALL) -s -m755 $(PROGS) "$(DESTDIR)/$(bindir)" ++ mkdir -p "$(DESTDIR)/$(mandir)/man1" ++ $(INSTALL) tcc.1 "$(DESTDIR)/$(mandir)/man1" ++ mkdir -p "$(DESTDIR)/$(tccdir)" ++ mkdir -p "$(DESTDIR)/$(tccdir)/include" + ifneq ($(LIBTCC1),) +- $(INSTALL) -m644 $(LIBTCC1) "$(tccdir)" ++ $(INSTALL) -m644 $(LIBTCC1) "$(DESTDIR)/$(tccdir)" + endif + ifneq ($(BCHECK_O),) +- $(INSTALL) -m644 $(BCHECK_O) "$(tccdir)" ++ $(INSTALL) -m644 $(BCHECK_O) "$(DESTDIR)/$(tccdir)" + endif +- $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(tccdir)/include" +- mkdir -p "$(docdir)" +- $(INSTALL) -m644 tcc-doc.html "$(docdir)" +- mkdir -p "$(libdir)" +- $(INSTALL) -m644 libtcc.a "$(libdir)" +- mkdir -p "$(includedir)" +- $(INSTALL) -m644 libtcc.h "$(includedir)" ++ $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(DESTDIR)/$(tccdir)/include" ++ mkdir -p "$(DESTDIR)/$(docdir)" ++ $(INSTALL) -m644 tcc-doc.html "$(DESTDIR)/$(docdir)" ++ mkdir -p "$(DESTDIR)/$(libdir)" ++ $(INSTALL) -m644 libtcc.a "$(DESTDIR)/$(libdir)" ++ mkdir -p "$(DESTDIR)/$(includedir)" ++ $(INSTALL) -m644 libtcc.h "$(DESTDIR)/$(includedir)" + + uninstall: +- rm -fv $(foreach P,$(PROGS),"$(bindir)/$P") +- rm -fv $(foreach P,$(LIBTCC1) $(BCHECK_O),"$(tccdir)/$P") +- rm -fv $(foreach P,$(TCC_INCLUDES),"$(tccdir)/include/$P") +- rm -fv "$(docdir)/tcc-doc.html" "$(mandir)/man1/tcc.1" +- rm -fv "$(libdir)/libtcc.a" "$(includedir)/libtcc.h" ++ rm -fv $(foreach P,$(PROGS),"$(DESTDIR)/$(bindir)/$P") ++ rm -fv $(foreach P,$(LIBTCC1) $(BCHECK_O),"$(DESTDIR)/$(tccdir)/$P") ++ rm -fv $(foreach P,$(TCC_INCLUDES),"$(DESTDIR)/$(tccdir)/include/$P") ++ rm -fv "$(DESTDIR)/$(docdir)/tcc-doc.html" "$(DESTDIR)/$(mandir)/man1/tcc.1" ++ rm -fv "$(DESTDIR)/$(libdir)/libtcc.a" "$(includedir)/libtcc.h" + + else + install: $(PROGS) $(LIBTCC1) libtcc.a tcc-doc.html +- mkdir -p "$(tccdir)" +- mkdir -p "$(tccdir)/lib" +- mkdir -p "$(tccdir)/include" +- mkdir -p "$(tccdir)/examples" +- mkdir -p "$(tccdir)/doc" +- mkdir -p "$(tccdir)/libtcc" +- $(INSTALL) -s -m755 $(PROGS) "$(tccdir)" +- $(INSTALL) -m644 $(LIBTCC1) win32/lib/*.def "$(tccdir)/lib" +- cp -r win32/include/. "$(tccdir)/include" +- cp -r win32/examples/. "$(tccdir)/examples" +-# $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(tccdir)/include" +- $(INSTALL) -m644 tcc-doc.html win32/tcc-win32.txt "$(tccdir)/doc" +- $(INSTALL) -m644 libtcc.a libtcc.h "$(tccdir)/libtcc" ++ mkdir -p "$(DESTDIR)/$(tccdir)" ++ mkdir -p "$(DESTDIR)/$(tccdir)/lib" ++ mkdir -p "$(DESTDIR)/$(tccdir)/include" ++ mkdir -p "$(DESTDIR)/$(tccdir)/examples" ++ mkdir -p "$(DESTDIR)/$(tccdir)/doc" ++ mkdir -p "$(DESTDIR)/$(tccdir)/libtcc" ++ $(INSTALL) -s -m755 $(PROGS) "$(DESTDIR)/$(tccdir)" ++ $(INSTALL) -m644 $(LIBTCC1) win32/lib/*.def "$(DESTDIR)/$(tccdir)/lib" ++ cp -r win32/include/. "$(DESTDIR)/$(tccdir)/include" ++ cp -r win32/examples/. "$(DESTDIR)/$(tccdir)/examples" ++# $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(DESTDIR)/$(tccdir)/include" ++ $(INSTALL) -m644 tcc-doc.html win32/tcc-win32.txt "$(DESTDIR)/$(tccdir)/doc" ++ $(INSTALL) -m644 libtcc.a libtcc.h "$(DESTDIR)/$(tccdir)/libtcc" + endif + + # documentation and man page diff --git a/development/tcc/slack-desc b/development/tcc/slack-desc index 527aa5a6352f..cc6b66651c15 100644 --- a/development/tcc/slack-desc +++ b/development/tcc/slack-desc @@ -5,7 +5,7 @@ # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |----------handy-ruler------------------------------------------------| + |----------handy-ruler-------------------------------------------------| tcc: tcc (Tiny C Compiler) tcc: tcc: Tiny C Compiler is a very fast C compiler. Unlike other C compilers, diff --git a/development/tcc/tcc.SlackBuild b/development/tcc/tcc.SlackBuild index d7bc39db7404..e463f85bed03 100644 --- a/development/tcc/tcc.SlackBuild +++ b/development/tcc/tcc.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for tiny c compiler -# Copyright (c) 2010 Markus Reichelt, Aachen, DE +# Copyright (c) 2010,2011 Markus Reichelt, Aachen, DE # All rights reserved. # # Permission to use, copy, modify, and distribute this software for @@ -26,10 +26,11 @@ # markus reichelt, slackbuilds@mareichelt.de, 0xCCEEF115 # in memoriam of Georg Ohler # 2010 Aug 23 - initial release - +# 2011 Oct 30 - incorporated fixes & Makefile patch from Vincent Batts + PRGNAM=tcc VERSION=${VERSION:-0.9.25} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -79,21 +80,29 @@ if [ "$CROSS" = "yes" ]; then else OPT="" fi +cat $CWD/makefile_destdir.patch | patch -p1 --backup + mkdir -p $PKG/usr/bin $PKG/usr/man/man1 $PKG/usr/doc $PKG/usr/include DFLAGS=$LDFLAGS \ CFLAGS=$SLKCFLAGS \ ./configure \ - --prefix=$PKG/usr \ - --libdir=$PKG/usr/lib$LIBDIRSUFFIX \ - --tccdir=$PKG/usr/lib$LIBDIRSUFFIX/tcc \ - --docdir=$PKG/usr/doc $OPT + --prefix=/usr \ + --libdir=/usr/lib$LIBDIRSUFFIX \ + --tccdir=/usr/lib$LIBDIRSUFFIX/tcc \ + --docdir=/usr/doc $OPT + +if [ "$ARCH" = "x86_64" ] ; then + sed -i 's/lib/lib64/' config.h + sed -i 's/lib\//lib64\//' config.mak +fi make #make test # this fails on x86_64 make install \ - tccdir=$PKG/usr/lib${LIBDIRSUFFIX}/tcc \ - docdir=$PKG/usr/doc/$PRGNAM-$VERSION + DESTDIR=$PKG \ + tccdir=/usr/lib${LIBDIRSUFFIX}/tcc \ + docdir=/usr/doc/$PRGNAM-$VERSION find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true diff --git a/development/tcc/tcc.info b/development/tcc/tcc.info index 758b161ce052..4b52477f328f 100644 --- a/development/tcc/tcc.info +++ b/development/tcc/tcc.info @@ -7,4 +7,4 @@ DOWNLOAD_x86_64="" MD5SUM_x86_64="" MAINTAINER="markus reichelt" EMAIL="slackbuilds@mareichelt.de" -APPROVED="rworkman" +APPROVED="rworkman,Niels Horn" -- cgit v1.2.3