--- llvm-gcc-4.2-2.6~pre1.orig/debian/llvm.binfmt +++ llvm-gcc-4.2-2.6~pre1/debian/llvm.binfmt @@ -0,0 +1,3 @@ +package llvm +interpreter /usr/bin/lli +magic llvc --- llvm-gcc-4.2-2.6~pre1.orig/debian/compat +++ llvm-gcc-4.2-2.6~pre1/debian/compat @@ -0,0 +1 @@ +6 --- llvm-gcc-4.2-2.6~pre1.orig/debian/control +++ llvm-gcc-4.2-2.6~pre1/debian/control @@ -0,0 +1,28 @@ +Source: llvm-gcc-4.2 +Section: devel +Priority: optional +Maintainer: LLVM Packaging Team +Uploaders: Arthur Loiret , Pierre Habouzit +Build-Depends: debhelper (>= 6.0.0), flex, bison, dejagnu, tcl8.4, expect, + autoconf, automake1.9, perl, libtool, doxygen, chrpath, texinfo, + sharutils, llvm (>= 2.6), llvm-dev (>= 2.6) +Standards-Version: 3.8.0 +Homepage: http://www.llvm.org/ +Vcs-Git: git://git.debian.org/git/pkg-llvm/llvm.git +Vcs-Browser: http://git.debian.org/?p=pkg-llvm/llvm.git;a=summary + +Package: llvm-gcc-4.2 +Architecture: any +Depends: llvm-dev (>= 2.6), llvm (>= 2.6), ${shlibs:Depends}, ${misc:Depends} +Provides: llvm-gcc, llvm-cfe +Suggests: gcc-4.2-doc +Description: C/C++ front end for LLVM compiler + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. + . + This is only a utility package that contains the C/C++ front-end + used by the compiler, and was created in order to reduce the overall + size of the compiler package itself. Please install the 'llvm' + package to install the actual compiler. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/copyright +++ llvm-gcc-4.2-2.6~pre1/debian/copyright @@ -0,0 +1,89 @@ +This package was debianized by Arthur Loiret on +Sun, 10 Nov 2007 12:32:05 +0200. + +It was downloaded from http://llvm.org/releases/download.html + + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 + + Copyright (C) 2004 Sam Hocevar + 14 rue de Plaisance, 75014 Paris, France + Everyone is permitted to copy and distribute verbatim or modified + copies of this license document, and changing it is allowed as long + as the name is changed. + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. + +============================================================================== +LLVM Release License +============================================================================== +University of Illinois/NCSA +Open Source License + +Copyright (c) 2003-2007 University of Illinois at Urbana-Champaign. +All rights reserved. + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE +SOFTWARE. + +============================================================================== +Copyrights and Licenses for Third Party Software Distributed with LLVM: +============================================================================== +The LLVM software contains code written by third parties. Such software will +have its own individual LICENSE.TXT file in the directory in which it appears. +This file will describe the copyrights, license, and restrictions which apply +to that code. + +The disclaimer of warranty in the University of Illinois Open Source License +applies to all code in the LLVM Distribution, and nothing in any of the +other licenses gives permission to use the names of the LLVM Team or the +University of Illinois to endorse or promote products derived from this +Software. + +The following pieces of software have additional or alternate copyrights, +licenses, and/or restrictions: + +Program Directory +------- --------- +System Library llvm/lib/System +Compiler Driver llvm/tools/llvmc +Autoconf llvm/autoconf + llvm/projects/ModuleMaker/autoconf + llvm/projects/sample/autoconf + --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules +++ llvm-gcc-4.2-2.6~pre1/debian/rules @@ -0,0 +1,70 @@ +#!/usr/bin/make -f +# +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +include debian/rules.d/vars.mk + +# run testsuite +with_check := no +ifneq (,$(filter $(DEB_HOST_ARCH),amd64 i386 ia64 powerpc s390 sparc kfreebsd-i386 kfreebsd-amd64)) + with_check := yes +endif + +BUILDDEPS := +ifeq (llvm,$(PKGSOURCE)) + builds := llvm-tools llvm-all + packages := llvm llvm-dev llvm-doc llvm-examples +endif +ifeq (llvm-snapshot,$(PKGSOURCE)) + PF := /usr/lib/llvm-snapshot + builds := llvm-tools llvm-all + packages := llvm-snapshot +endif +ifneq (,$(filter llvm-gcc-%,$(PKGSOURCE))) + BUILDDEPS := llvm (>= $(UVERSION)), llvm-dev (>= $(UVERSION)) + tarballs := gcc + builds := llvm-gcc + packages := llvm-gcc + with_check := no +endif + +confargs := \ + --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) +confargs_llvm := $(confargs) +confargs_gcc := $(confargs) + +confargs_llvm += \ + --with-pic --enable-pic \ + --prefix=$(PF) + +confargs_gcc += \ + --prefix=$(PF)/gcc-$(gcc_version) \ + --enable-languages=c,c++ --program-prefix=llvm- \ + --enable-llvm=/usr/lib/llvm \ + --enable-threads --disable-nls --disable-shared \ + --disable-multilib + +llvm_MAKEOPTS := DebianOpts="-DLLVM_DEBIAN_INFO='\" (Debian $(VERSION))\"'" + +xxx: + @echo $(VERSION) + +include debian/rules.d/control.mk +include debian/rules.d/unpack.mk +include debian/rules.d/build.mk +include debian/rules.d/check.mk +include debian/rules.d/binary.mk + +clean: + $(RM) log-* missing + $(RM) -r $(llvm_buildir) $(gcc_buildir) + $(RM) -r $(llvm_srcdir) $(gcc_srcdir) + +.PHONY: clean --- llvm-gcc-4.2-2.6~pre1.orig/debian/logwatch.sh +++ llvm-gcc-4.2-2.6~pre1/debian/logwatch.sh @@ -0,0 +1,104 @@ +#! /bin/sh + +# script to trick the build daemons and output something, if there is +# still test/build activity + +# $1: primary file to watch. if there is activity on this file, we do nothing +# $2+: files to watch to look for activity despite no output in $1 +# if the files are modified or are newly created, then the message +# is printed on stdout. +# if nothing is modified, don't output anything (so the buildd timeout +# hits). + +pidfile=logwatch.pid +timeout=3600 +message='\nlogwatch still running\n' + +usage() +{ + echo >&2 "usage: `basename $0` [-p ] [-t ] [-m ]" + echo >&2 " [ ...]" + exit 1 +} + +while [ $# -gt 0 ]; do + case $1 in + -p) + pidfile=$2 + shift + shift + ;; + -t) + timeout=$2 + shift + shift + ;; + -m) + message="$2" + shift + shift + ;; + -*) + usage + ;; + *) + break + esac +done + +[ $# -gt 0 ] || usage + +logfile="$1" +shift +otherlogs="$@" + +cleanup() +{ + rm -f $pidfile + exit 0 +} + +#trap cleanup 0 1 3 15 + +echo $$ > $pidfile + +update() +{ + _logvar=$1 + _othervar=$2 + + # logfile may not exist yet + if [ -r $logfile ]; then + _logtail="`tail -10 $logfile | md5sum` $f" + else + _logtail="does not exist: $logfile" + fi + eval $_logvar="'$_logtail'" + + _othertails='' + for f in $otherlogs; do + if [ -r $f ]; then + _othertails="$_othertails `tail -10 $f | md5sum` $f" + else + _othertails="$_othertails does not exist: $f" + fi + done + eval $_othervar="'$_othertails'" +} + +update logtail othertails +while true; do + sleep $timeout + update newlogtail newothertails + if [ "$logtail" != "$newlogtail" ]; then + # there is still action in the primary logfile. do nothing. + logtail="$newlogtail" + elif [ "$othertails" != "$newothertails" ]; then + # there is still action in the other log files, so print the message + /bin/echo -e $message + othertails="$newothertails" + else + # nothing changed in the other log files. maybe a timeout ... + : + fi +done --- llvm-gcc-4.2-2.6~pre1.orig/debian/changelog +++ llvm-gcc-4.2-2.6~pre1/debian/changelog @@ -0,0 +1,24 @@ +llvm-gcc-4.2 (2.6~pre1-0ubuntu1) karmic; urgency=low + + * New upstream version, to fix build failure with llvm-2.6. + + -- Matthias Klose Mon, 26 Oct 2009 18:47:51 +0000 + +llvm-gcc-4.2 (2.5-1) unstable; urgency=low + + * New upstream release. + * Merge llvm build infrastructure and patches. + + -- Arthur Loiret Fri, 06 Mar 2009 19:19:11 +0000 + +llvm-gcc-4.2 (2.2-1) unstable; urgency=low + + [ Arthur Loiret ] + * Initial release. Closes: #468337, #468340 + * Remove non-DFSG files from orig tarball. Closes: #392955 + + [ Pierre Habouzit ] + * Add patches/0002-prune-GFDL-related-targets.patch to remove the Makefile + targets affected by the .texi's removal. + + -- Pierre Habouzit Sun, 20 Apr 2008 23:36:40 +0200 --- llvm-gcc-4.2-2.6~pre1.orig/debian/patches/0002-prune-GFDL-related-targets.patch +++ llvm-gcc-4.2-2.6~pre1/debian/patches/0002-prune-GFDL-related-targets.patch @@ -0,0 +1,41 @@ +--- a/llvm-gcc-4.2-2.6/gcc/Makefile.in ++++ b/llvm-gcc-4.2-2.6/gcc/Makefile.in +@@ -3812,7 +3812,7 @@ + + generated-manpages: man + +-man: $(MANFILES) lang.man @GENINSRC@ srcman lang.srcman ++man: @GENINSRC@ + + srcman: $(MANFILES) + -cp -p $^ $(srcdir)/doc +@@ -4109,13 +4109,7 @@ + # Install the info files. + # $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir + # to do the install. +-install-info:: doc installdirs \ +- $(DESTDIR)$(infodir)/cpp.info \ +- $(DESTDIR)$(infodir)/gcc.info \ +- $(DESTDIR)$(infodir)/cppinternals.info \ +- $(DESTDIR)$(infodir)/gccinstall.info \ +- $(DESTDIR)$(infodir)/gccint.info \ +- lang.install-info ++install-info:: doc installdirs + + $(DESTDIR)$(infodir)/%.info: doc/%.info installdirs + rm -f $@ +@@ -4152,13 +4146,7 @@ + done + + # Install the man pages. +-install-man: lang.install-man \ +- $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext) \ +- $(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext) \ +- $(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext) \ +- $(DESTDIR)$(man7dir)/fsf-funding$(man7ext) \ +- $(DESTDIR)$(man7dir)/gfdl$(man7ext) \ +- $(DESTDIR)$(man7dir)/gpl$(man7ext) ++install-man: + + $(DESTDIR)$(man7dir)/%$(man7ext): doc/%.7 installdirs + -rm -f $@ --- llvm-gcc-4.2-2.6~pre1.orig/debian/patches/0001-Use-Debian-paths.patch +++ llvm-gcc-4.2-2.6~pre1/debian/patches/0001-Use-Debian-paths.patch @@ -0,0 +1,31 @@ +--- a/llvm-gcc-4.2-2.6/gcc/Makefile.in ++++ b/llvm-gcc-4.2-2.6/gcc/Makefile.in +@@ -945,6 +945,9 @@ + + INCLUDES += -I$(LLVMSRCDIR)/include + endif ++ ++# On Debian, headers are installed in /usr/include/llvm ++INCLUDES += -I/usr/include -I/usr/include/llvm -I/usr/include/llvm-c + # LLVM LOCAL end + .c.o: + $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $< $(OUTPUT_OPTION) +@@ -2918,15 +2921,15 @@ + # LLVM LOCAL begin + llvm-main.o : llvm-main.cpp $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h + llvm-symbol-stubs.o : llvm-symbol-stubs.cpp +-LLVM_HEADERS := $(wildcard $(LLVMSRCDIR)/include/llvm/*) \ +- $(wildcard $(LLVMSRCDIR)/include/llvm/*/*) ++LLVM_HEADERS := $(wildcard /usr/include/llvm/*) \ ++ $(wildcard /usr/include/llvm/*/*) + + ALL_HEADERS := $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ + llvm.h llvm-internal.h llvm-file-ostream.h llvm-abi.h llvm-debug.h \ + $(LLVM_HEADERS) + llvm-backend.o : llvm-backend.cpp $(ALL_HEADERS) + llvm-convert.o : llvm-convert.cpp $(ALL_HEADERS) \ +- $(LLVMOBJDIR)/include/llvm/Intrinsics.gen ++ /usr/include/llvm/Intrinsics.gen + llvm-types.o : llvm-types.cpp $(ALL_HEADERS) + llvm-debug.o : llvm-debug.cpp $(ALL_HEADERS) + # LLVM LOCAL end --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/binary.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/binary.mk @@ -0,0 +1,60 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +check := $(if $(findstring yes,$(with_check)),$(check-stamp),) +binary binary-indep binary-arch: $(build-stamp) $(check) $(install-stamp) +binary-arch: $(addprefix $(binary-stamp)-,$(packages_arch)) +binary-indep: $(addprefix $(binary-stamp)-,$(packages_indep)) +binary: binary-arch binary-indep + dh_install --list-missing 2>&1 + +debhelper-%: + $(foreach f,$(notdir $(wildcard $(D)/debian/debhelper.in/$*.*)),\ + sed -e "s;@PF@;$(PF);g" \ + -e "s;@GCC_VERSION@;$(GCC_VERSION);g" \ + -e "s;@LLVM_VERSION@;$(LLVM_VERSION);g" \ + $(D)/debian/debhelper.in/$f > $(D)/debian/$f &&) : + +clean: clean-debhelper +clean-debhelper: clean-common + $(RM) $(addprefix debian/,$(notdir $(wildcard $(D)/debian/debhelper.in/*))) + +$(binary-stamp)-%: debhelper-% + @echo Building package: $* + dh_testdir + dh_testroot + dh_installchangelogs -p$* + dh_installdocs -p$* + dh_installexamples -p$* + dh_installman -p$* + dh_installmime -p$* + dh_install -p$* + -if test "x$*" = "xllvm" ; then \ + $(RM) $(D)/debian/llvm.links ; \ + for i in $(shell ls $(D)/debian/tmp/$(PF)/bin); do \ + chrpath -d $(D)/debian/llvm/$(PF)/bin/$$i ; \ + echo "$(PF)/bin/$$i usr/bin/$$i" >> $(D)/debian/llvm.links ; \ + done ; \ + fi + -if test "x$*" = "xllvm-dev" ; then \ + chmod 644 $(D)/debian/$*/$(PF)/build/Makefile* ; \ + find $(D)/debian/$* -type f -name "LICENSE.TXT" | xargs rm -f ; \ + fi + dh_link -p$* + dh_strip -p$* + dh_compress -p$* + dh_fixperms -p$* + dh_installdeb -p$* + dh_shlibdeps -p$* + dh_gencontrol -p$* + dh_md5sums -p$* + dh_builddeb -p$* + touch $@ + +.PHONY: binary binary-arch binary-indep debhelper-% --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/build.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/build.mk @@ -0,0 +1,62 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +configure: $(configure-stamp) +$(configure-stamp): $(addprefix $(configure-stamp)-,$(builds)) + touch $@ + +build: $(build-stamp) +$(build-stamp): $(addprefix $(build-stamp)-,$(builds)) + touch $@ + +install: $(install-stamp) +$(install-stamp): $(addprefix $(install-stamp)-,$(builds)) + +clean: clean-common +clean-common: + dh_testdir + dh_testroot + dh_clean + $(RM) -r $(stampdir) + $(RM) $(D)/debian/log-check $(D)/debian/logwatch.pid + +.PHONY: configure build install clean clean-% + + +$(addprefix $(configure-stamp)-llvm-,tools all): $(configure-stamp)-llvm +$(configure-stamp)-llvm: $(unpack-stamp) $(patch-stamp) $(mkdir-stamp)-$(llvm_buildir) + cd $(llvm_buildir) && \ + ../configure $(confargs_llvm) + touch $@ +$(build-stamp)-llvm-tools: $(configure-stamp)-llvm + $(MAKE) -C $(llvm_buildir) $(llvm_MAKEOPTS) tools-only VERBOSE=1 + touch $@ +$(build-stamp)-llvm-all: $(configure-stamp)-llvm + $(MAKE) -C $(llvm_buildir) $(llvm_MAKEOPTS) VERBOSE=1 + touch $@ +$(install-stamp)-llvm-%: $(build-stamp)-llvm-% $(install-stamp)-llvm + touch $@ +$(install-stamp)-llvm: + $(MAKE) -C $(llvm_buildir) install DESTDIR=$(D)/debian/tmp + +$(configure-stamp)-llvm-snapshot: $(configure-stamp-llvm) +$(build-stamp)-llvm-snapshot: $(build-stamp-llvm) +$(install-stamp)-llvm-snapshot: $(install-stamp-llvm) + +$(configure-stamp)-llvm-gcc: $(unpack-stamp) $(patch-stamp) $(mkdir-stamp)-$(gcc_buildir) + cd $(gcc_buildir) && \ + ../$(gcc_srcdir)/configure $(confargs_gcc) + touch $@ +$(build-stamp)-llvm-gcc: $(configure-stamp)-llvm-gcc + $(MAKE) -C $(gcc_buildir) $(gcc_MAKEOPTS) + touch $@ +$(install-stamp)-llvm-gcc: $(build-stamp)-llvm-gcc + $(MAKE) -C $(gcc_buildir) install DESTDIR=$(D)/debian/tmp + touch $@ + --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/vars.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/vars.mk @@ -0,0 +1,53 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +DISTRIBUTION := $(shell dpkg-parsechangelog | grep ^Distribution | sed -e 's/^Distribution: //') +PKGSOURCE := $(shell dpkg-parsechangelog | grep ^Source | sed -e 's/^Source: //') +VERSION := $(shell dpkg-parsechangelog | grep ^Version | sed -e 's/^Version: //') +PF := /usr/lib/llvm +D := $(CURDIR) + +UVERSION := $(shell echo $(VERSION) | cut -d'~' -f1 | cut -d'-' -f1) + +$(foreach x,$(shell dpkg-architecture | sed -e 's/=/?=/'),$(eval $x)) + +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + NJOBS := $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +else + NCPUS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1) + NJOBS := $(shell if test $(NCPUS) -gt 1; then echo `expr $(NCPUS) + 1`; \ + else echo $(NCPUS); fi) +endif +MAKE := $(MAKE) -j$(NJOBS) + +llvm_buildir := build-llvm + +gcc_version := 4.2 +gcc_tarpath := $(firstword $(wildcard $(D)/llvm-gcc-$(gcc_version)*.tar.* \ + /usr/src/llvm/llvm-gcc-$(gcc_version)*.tar.*)) +gcc_tarball := $(notdir $(gcc_tarpath)) +gcc_srcdir := $(subst -dfsg,,$(subst .tar$(suffix $(gcc_tarball)),,$(gcc_tarball))) +gcc_buildir := build-gcc + + +stampdir := $(D)/debian/stamps +control-stamp := $(stampdir)/control-stamp +mkdir-stamp := $(stampdir)/mkdir-stamp +unpack-stamp := $(stampdir)/unpack-stamp +patch-stamp := $(stampdir)/patch-stamp +configure-stamp := $(stampdir)/configure-stamp +build-stamp := $(stampdir)/build-stamp +check-stamp := $(stampdir)/check-stamp +install-stamp := $(stampdir)/install-stamp +binary-stamp := $(stampdir)/binary-stamp + + +packages_indep := $(strip $(shell dh_listpackages -i)) +packages_all := $(strip $(shell dh_listpackages -s)) +packages_arch := $(filter-out $(packages_indep),$(packages_all)) --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/control.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/control.mk @@ -0,0 +1,24 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +ifneq (,$(strip $(BUILDDEPS))) + BUILDDEPS:=, $(BUILDDEPS) +endif + +debian/control: + @echo Regenerating control file... + sed -e "s/@PKGSOURCE@/$(PKGSOURCE)/g" \ + -e "s/ *@BUILDDEPS@/$(BUILDDEPS)/g" \ + -e "s/@UVERSION@/$(UVERSION)/g" \ + $@.in/source $(addprefix $@.in/,$(packages)) > $@ + +control: debian/control +clean: control + +.PHONY: control debian/control --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/unpack.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/unpack.mk @@ -0,0 +1,50 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +unpack: $(unpack-stamp) +$(unpack-stamp): $(addprefix $(unpack-stamp)-,$(tarballs)) + mkdir -p $(@D) + touch $@ + +$(unpack-stamp)-%: + -mkdir $(stampdir) 2>/dev/null + $(RM) -r $($*_srcdir) + case $($*_tarball) in \ + *.bz2) tar -x --bzip2 -f $($*_tarpath);; \ + *.gz) tar -x --gzip -f $($*_tarpath);; \ + *.lzma) lzcat $($*_tarpath) | tar -x -f -;; \ + *) false;; \ + esac + touch $@ + +$(mkdir-stamp)-%: + $(RM) -r $* + mkdir -p $* + touch $@ + +patch: $(patch-stamp) +$(patch-stamp): $(unpack-stamp) + set -e; test -e $(patch-stamp) || \ + for i in `ls -1 $(D)/debian/patches/*.patch || :`; do \ + echo "Applying patch: $$i" && patch -p1 <$$i > /dev/null; \ + done + touch $@ + +unpatch: +ifeq (,$(tarball)) + set -e; ! test -e $(patch-stamp) || \ + for i in `ls -1r $(D)/debian/patches/*.patch || :`; do \ + echo "Reverting patch: $$i" && patch -p1 -R <$$i > /dev/null; \ + done +endif + $(RM) -f $(patch-stamp) + +clean: unpatch + +.PHONY: unpack patch unpatch --- llvm-gcc-4.2-2.6~pre1.orig/debian/rules.d/check.mk +++ llvm-gcc-4.2-2.6~pre1/debian/rules.d/check.mk @@ -0,0 +1,30 @@ +# Copyright (C) 2008 Arthur Loiret +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + + +ifeq ($(PKGSOURCE),llvm) + check_dir := $(llvm_buildir) +endif +ifneq (,$(filter llvm-gcc-%,$(PKGSOURCE))) + check_dir := $(gcc_buildir) +endif + +check: $(check-stamp) +$(check-stamp): + chmod +x $(D)/debian/logwatch.sh + -debian/logwatch.sh -t 900 -p $(D)/debian/logwatch.pid \ + -m '\ntestsuite still running ...\n' \ + $(D)/debian/log-check \ + & + @echo BEGIN-testsuite + -$(MAKE) -C $(check_dir) check 2>&1 | tee $(D)/debian/log-check + @echo END-testsuite + touch $@ + + +.PHONY: check --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-examples.links +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-examples.links @@ -0,0 +1,3 @@ +@PF@/build/Makefile.common usr/share/doc/llvm-examples/Makefile.common +@PF@/build/Makefile.config usr/share/doc/llvm-examples/Makefile.config +@PF@/build/Makefile.rules usr/share/doc/llvm-examples/Makefile.rules --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-dev.dirs +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-dev.dirs @@ -0,0 +1,2 @@ +@PF@/lib +@PF@/build --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-gcc-4.2.install +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-gcc-4.2.install @@ -0,0 +1 @@ +debian/tmp/@PF@ @PF@/ --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm.prerm +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm.prerm @@ -0,0 +1,11 @@ +#!/bin/sh -e + +if test "$1" = "remove"; then + if test -x /usr/sbin/update-binfmts; then + update-binfmts --package llvm \ + --remove llvm /usr/bin/lli || true + fi +fi + +#DEBHELPER# + --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm.postinst +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm.postinst @@ -0,0 +1,9 @@ +#!/bin/sh -e + +if test "$1" = "configure"; then + if test -x /usr/sbin/update-binfmts; then + update-binfmts --import llvm.binfmt || true + fi +fi + +#DEBHELPER# --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-doc.dirs +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-doc.dirs @@ -0,0 +1 @@ +usr/share/doc/llvm-doc --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-dev.install +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-dev.install @@ -0,0 +1,9 @@ +debian/tmp/@PF@/lib/* @PF@/lib/ +debian/tmp/@PF@/include/* usr/include/ + +build-llvm/Makefile.common @PF@/build/ +build-llvm/Makefile.config @PF@/build/ +build-llvm/config.status @PF@/build/ +Makefile.rules @PF@/build/ +configure @PF@/build/ +autoconf/ @PF@/build/ --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-examples.dirs +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-examples.dirs @@ -0,0 +1 @@ +usr/share/doc/llvm-examples --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm.links +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm.links @@ -0,0 +1 @@ +# AUTOGENERATED in debian/rules.d/build.mk. --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm.dirs +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm.dirs @@ -0,0 +1,6 @@ +@PF@/bin +usr/bin +usr/include +usr/share/man/man1 +etc/llvm +usr/share/binfmts --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm.install +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm.install @@ -0,0 +1,3 @@ +debian/tmp/@PF@/bin/* @PF@/bin/ +debian/tmp/@PF@/share/man/man1/* usr/share/man/man1/ +debian/llvm.binfmt usr/share/binfmts/ --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-examples.examples +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-examples.examples @@ -0,0 +1 @@ +examples/* --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-doc.install +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-doc.install @@ -0,0 +1,2 @@ +debian/tmp/@PF@/docs/llvm/html usr/share/doc/llvm-doc/ +debian/tmp/@PF@/docs/llvm/ps usr/share/doc/llvm-doc/ --- llvm-gcc-4.2-2.6~pre1.orig/debian/debhelper.in/llvm-snapshot.install +++ llvm-gcc-4.2-2.6~pre1/debian/debhelper.in/llvm-snapshot.install @@ -0,0 +1,13 @@ +debian/tmp/@PF@/bin/* @PF@/bin/ +debian/tmp/@PF@/lib/* @PF@/lib/ +debian/tmp/@PF@/include/* @PF@/include/ + +debian/tmp/@PF@/docs/llvm/html usr/share/doc/llvm-snapshot/ +debian/tmp/@PF@/docs/llvm/ps usr/share/doc/llvm-snapshot/ + +build-llvm/Makefile.common @PF@/build/ +build-llvm/Makefile.config @PF@/build/ +build-llvm/config.status @PF@/build/ +Makefile.rules @PF@/build/ +configure @PF@/build/ +autoconf/ @PF@/build/ --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm-examples +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm-examples @@ -0,0 +1,19 @@ +Package: llvm-examples +Section: doc +Architecture: all +Depends: llvm-dev (>= ${source:Version}), llvm-dev (<< ${source:Version}+c~) +Description: examples using LLVM (Low-Level Virtual Machine) compiler + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. LLVM + uses a single, language-independent virtual instruction set both + as an offline code representation (to communicate code between + compiler phases and to run-time systems) and as the compiler internal + representation (to analyze and transform programs). This persistent + code representation allows a common set of sophisticated compiler + techniques to be applied at compile-time, link-time, install-time, + run-time, or "idle-time" (between program runs). + . + This package contains examples for using LLVM, both in developing + extensions to LLVM and in using it to compile code. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm-dev +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm-dev @@ -0,0 +1,14 @@ +Package: llvm-dev +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, llvm (>= ${binary:Version}) +Provides: llvm-libs +Conflicts: llvm-libs +Replaces: llvm-libs, llvm (<< 2.2-3) +Description: common libraries and headers for LLVM compiler for C/C++ + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. + . + This package provides the libraries and headers to develop applications + using llvm. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm-doc +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm-doc @@ -0,0 +1,17 @@ +Package: llvm-doc +Section: doc +Architecture: all +Description: documentation for LLVM (Low-Level Virtual Machine) compiler + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. LLVM + uses a single, language-independent virtual instruction set both + as an offline code representation (to communicate code between + compiler phases and to run-time systems) and as the compiler internal + representation (to analyze and transform programs). This persistent + code representation allows a common set of sophisticated compiler + techniques to be applied at compile-time, link-time, install-time, + run-time, or "idle-time" (between program runs). + . + This package contains all documentation (extensive). + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm @@ -0,0 +1,28 @@ +Package: llvm +Architecture: any +Suggests: llvm-doc +Depends: binfmt-support, ${shlibs:Depends}, ${misc:Depends} +Recommends: llvm-dev +Description: Low-Level Virtual Machine (LLVM) compiler for C/C++ + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. LLVM + uses a single, language-independent virtual instruction set both + as an offline code representation (to communicate code between + compiler phases and to run-time systems) and as the compiler internal + representation (to analyze and transform programs). This persistent + code representation allows a common set of sophisticated compiler + techniques to be applied at compile-time, link-time, install-time, + run-time, or "idle-time" (between program runs). + . + The strengths of the LLVM infrastructure are its extremely + simple design (which makes it easy to understand and use), + source-language independence, powerful mid-level optimizer, automated + compiler debugging support, extensibility, and its stability and + reliability. LLVM is currently being used to host a wide variety of + academic research projects and commercial projects. LLVM includes C + and C++ front-ends (based on GCC 4.0.1), a front-end for a Forth-like + language (Stacker), a young scheme front-end, and Java support is + in development. LLVM can generate code for X86, SparcV9, PowerPC, + or it can emit C code. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm-gcc +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm-gcc @@ -0,0 +1,15 @@ +Package: llvm-gcc-4.2 +Architecture: any +Depends: llvm-dev (>= @UVERSION@), llvm (>= @UVERSION@), ${shlibs:Depends}, ${misc:Depends} +Provides: llvm-gcc, llvm-cfe +Suggests: gcc-4.2-doc +Description: C/C++ front end for LLVM compiler + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. + . + This is only a utility package that contains the C/C++ front-end + used by the compiler, and was created in order to reduce the overall + size of the compiler package itself. Please install the 'llvm' + package to install the actual compiler. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/llvm-snapshot +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/llvm-snapshot @@ -0,0 +1,27 @@ +Package: llvm-snapshot +Architecture: any +Suggests: llvm-doc +Depends: binfmt-support, ${shlibs:Depends}, ${misc:Depends} +Description: a SNAPSHOT of the Low-Level Virtual Machine (LLVM) compiler for C/C++ + The Low-Level Virtual Machine (LLVM) is a collection of libraries and + tools that make it easy to build compilers, optimizers, Just-In-Time + code generators, and many other compiler-related programs. LLVM + uses a single, language-independent virtual instruction set both + as an offline code representation (to communicate code between + compiler phases and to run-time systems) and as the compiler internal + representation (to analyze and transform programs). This persistent + code representation allows a common set of sophisticated compiler + techniques to be applied at compile-time, link-time, install-time, + run-time, or "idle-time" (between program runs). + . + The strengths of the LLVM infrastructure are its extremely + simple design (which makes it easy to understand and use), + source-language independence, powerful mid-level optimizer, automated + compiler debugging support, extensibility, and its stability and + reliability. LLVM is currently being used to host a wide variety of + academic research projects and commercial projects. LLVM includes C + and C++ front-ends (based on GCC 4.0.1), a front-end for a Forth-like + language (Stacker), a young scheme front-end, and Java support is + in development. LLVM can generate code for X86, SparcV9, PowerPC, + or it can emit C code. + --- llvm-gcc-4.2-2.6~pre1.orig/debian/control.in/source +++ llvm-gcc-4.2-2.6~pre1/debian/control.in/source @@ -0,0 +1,13 @@ +Source: @PKGSOURCE@ +Section: devel +Priority: optional +Maintainer: LLVM Packaging Team +Uploaders: Arthur Loiret , Pierre Habouzit +Build-Depends: debhelper (>= 6.0.0), flex, bison, dejagnu, tcl8.4, expect, + autoconf, automake1.9, perl, libtool, doxygen, chrpath, texinfo, + sharutils @BUILDDEPS@ +Standards-Version: 3.8.0 +Homepage: http://www.llvm.org/ +Vcs-Git: git://git.debian.org/git/pkg-llvm/llvm.git +Vcs-Browser: http://git.debian.org/?p=pkg-llvm/llvm.git;a=summary +