debian/0000755000000000000000000000000011773530126007173 5ustar debian/NEWS0000644000000000000000000000123611603106362007665 0ustar aspectc++ (0.99+1.0pre2-3) unstable; urgency=low The script 'update-puma.config' has been removed! To update your /etc/puma.config, please use the command 'dpkg-reconfigure aspectc++'. This step is necessary after each change of your compilers system includes, so this means every major gcc update. This shouldn't happen that often in a stable release, but if you are running unstable, this will happen from time to time. If you know some what to automate this without bugging the gcc maintainers, please tell me, but AFAIK triggers have not been implemented in dpkg yet. -- Reinhard Tartler Tue, 10 Jan 2006 14:07:11 +0100 debian/source/0000755000000000000000000000000011773530126010473 5ustar debian/source/format0000644000000000000000000000001411603106362011672 0ustar 3.0 (quilt) debian/dirs0000644000000000000000000000001011741463463010052 0ustar usr/bin debian/aspectc++.manpages0000644000000000000000000000001611603106362012446 0ustar ac++.1 ag++.1 debian/aspectc++.postinst0000644000000000000000000000175711603106362012553 0ustar #!/bin/sh -e # summary of how this script can be called: # * `configure' # * `abort-upgrade' # * `abort-remove' `in-favour' # # * `abort-deconfigure' `in-favour' # `removing' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package # PUMA_CONFIG=/etc/puma.config case "$1" in configure) echo generating ${PUMA_CONFIG} (cd /etc; ag++ --gen_config) chown root:root $PUMA_CONFIG chmod 644 $PUMA_CONFIG ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/README.Debian0000644000000000000000000000324211603106362011226 0ustar PUMA_CONFIG environment Variable -------------------------------- The ac++ requires the environment variable named PUMA_CONFIG set, or will fall back to /etc/puma.config. Without a suitable puma.config file, ac++ will fail with irritating error messages about not finding the right includes. The debian package uses ag++ to create an suitable puma.config in its postinst script. This script has to be re-run each time a new gcc version is installed using dpkg-reconfigure. Unfortunatly, there is no mechanism to register hooks after upgrading gcc, so this is up to the local system admin. After all this would not happen quite often in a stable release, huh? ;) -- Reinhard Tartler , Thu, 30 Jun 2011 16:47:26 +0200 Woven vs. Unwoven Sources ------------------------- the orig.tar.gz has been downloaded from http://www.aspectc.org/fileadmin/downloads/ac/1.0pre2/ac-woven-1.0pre2.tar.gz The unwoven sources require ac++ to build. The woven sources have do have exact the same sources, but Puma has already been woven, so that it can be built on the buildds. The shell wrappers ac++ and ag++ have been removed, because puma now uses /etc/puma.config as default config file if no environment variable PUMA_CONFIG is set. -- Reinhard Tartler Fri, 23 Dec 2005 10:18:20 +0100 aspectc++ for Debian -------------------- AspectC++ development team shipped version 0.9.1 compiling static binaries. This was changed in this Debian package, keeping static linkage only with libPuma, which is an AspectC++ specific library, and doens't need to be distributed. -- Antonio S. de A. Terceiro , Sat, 12 Feb 2005 21:40:50 -0200 debian/changelog0000644000000000000000000002362311773530073011054 0ustar aspectc++ (1:1.1+svn20120529-2) unstable; urgency=low * Install missing lexertl files in libpuma-dev Puma. Thanks to Christoph Egger for reporting Closes: #679583 -- Reinhard Tartler Sat, 30 Jun 2012 09:45:17 +0200 aspectc++ (1:1.1+svn20120529-1) unstable; urgency=low * New upstream snapshot. - Fixes with fcntl handling on kFreeBSD - Upstream fixes in the Puma Parser -- Reinhard Tartler Wed, 30 May 2012 10:01:33 +0200 aspectc++ (1:1.1+svn742-1) unstable; urgency=low * New upstream snapshot. - fixes compilation with gcc 4.7 (Closes: #672013) * disable parallelism inside debian/rules (but not submakes) -- Reinhard Tartler Tue, 22 May 2012 21:12:18 +0200 aspectc++ (1:1.1-1) unstable; urgency=low * New upstream release. * Apply patches to fix FTBFS with recent gcc versions. Closes: #667103 * Avoid empty directory usr/sbin (found by lintian) * Bump Standards version to 3.9.3.1 (no changes needed) * Avoid running doxygen on the buildds. -- Reinhard Tartler Wed, 11 Apr 2012 21:09:34 +0200 aspectc++ (1:1.0-4) unstable; urgency=low * debian/rules: Build doxygen in binary-arch target until buildds call the build-arch target instead of build to avoid FTBFS. -- Reinhard Tartler Thu, 30 Jun 2011 21:11:23 +0200 aspectc++ (1:1.0-3) unstable; urgency=low * Don't compress examples files * Install into correct paths * add notes for linking against libPuma.a * Don't install non-functional Makefiles in example directories * Drop -no-rtti and from CFLAGS * implement build-arch and build-indep target as suggested by debian policy * Honor 'nocheck' flag in DEB_BUILD_OPTIONS -- Reinhard Tartler Thu, 30 Jun 2011 17:29:15 +0200 aspectc++ (1:1.0-2) unstable; urgency=low * apply patch from upstream to fix FTBFS on kFreeBSD * simplify Vcs-Bzr field -- Reinhard Tartler Tue, 19 Apr 2011 21:59:07 +0200 aspectc++ (1:1.0-1) unstable; urgency=low * New upstream version * don't ignore errors in maintainer scripts * aspectc++.postinst: don't call ag++ with full path * prefer dh_prep over dh_clean -k * Add ${misc:Depends} dependencies * support parallel builds * bump standards version * bump debhelper compat level to 7 * install all Puma samples * switch to source format 3.0 (quilt) -- Reinhard Tartler Mon, 18 Apr 2011 21:40:56 +0200 aspectc++ (1.0pre4~svn.20080711-1) unstable; urgency=low * new upstream snapshot. * include all upstream documentation. Clarifying emails regarding licensing has been included into debian/copyright. * reformat description following recomendations of http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Description (Closes: #480316) -- Reinhard Tartler Mon, 07 Jul 2008 14:41:02 +0200 aspectc++ (1.0pre4~svn.20080409+dfsg-3) unstable; urgency=low * Fix another missing include, this time in Ag++/StdSystem.cc -- Reinhard Tartler Thu, 10 Apr 2008 17:40:52 +0200 aspectc++ (1.0pre4~svn.20080409+dfsg-2) unstable; urgency=low * After another round of reviewing Bens diff, the NMU was correct after all. Incorporating the Ppatch from http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=23;bug=417489 Really Closes: #417489 this time. * reweave Puma with changes from previous change. * More cleanups in the Puma buildscripts: debian/rules honors now noopt in the variable DEB_BUILD_OPTIONS. * add Vcs-Bzr headers to debian/control. -- Reinhard Tartler Thu, 10 Apr 2008 13:37:36 +0200 aspectc++ (1.0pre4~svn.20080409+dfsg-1) unstable; urgency=low * new upstream snapshot - now builds properly with GCC 4.3 (Closes: #417489, #424106) - uses bash in the ag++ testsuite (Closes: #373665) - explicitly not ACKing NMU from Ben Hutchings. Upstream has fixed the issues with GCC 4.3 independently - Now shipping prewoven puma sources directly in the orig.tar.gz (again) - remove unlicensed documentation. * bumbed standards version * use CURDIR instead of PWD, thanks lintian * updated maintainer record * add script and target for retrieving a clean upstream tarball * Incorporating and Acking NMU from Sandro Tosi. (Closes: #424106) * compile ac++ twice: one time with prewoven Puma, then reweave a copy of Puma, then build a new ac++ with the freshly woven Puma. This ensures that ac++ is actually able to compile itself (Closes: #474560) * ensure that the AspectC++ testsuite is using /bin/bash (Closes: #373665) * compile with -O2 instead of -O3. -O2 is likely to cause problems on non-mainstream architectures. Plus, add '-g' to compilation flags, so that a build with DEB_BUILD_OPTIONS='noopt' actually creates a package with debugging information. * add dependency on gsfonts for having proper fonts in the doxygen outputs. * Bump Standard version to 3.7.3 (no changes needed). * Use Homepage Field. * Move packages into correct sections: libpuma-doc -> doc, libpuma-dev -> libdevel. * simplify debian/rules a bit. * install (woven) Puma development headers into libpuma-dev. -- Reinhard Tartler Thu, 10 Apr 2008 09:23:51 +0200 aspectc++ (0.99+1.0pre3-3.1) unstable; urgency=low * Non-maintainer upload [ Sandro Tosi ] * debian/rules - added removal of binary not cleaned (Closes: #424106) [ Ben Hutchings ] * Fixed recursive make invocations to avoid hiding failures * Added/changed #include and using directives for g++ 4.3 (Closes: #417489) (partly by Martin Michlmayr) * Added missing parentheses in Puma::FilenameInfo::name() -- Ben Hutchings Sun, 06 Apr 2008 01:15:28 +0100 aspectc++ (0.99+1.0pre3-3) experimental; urgency=low * more cleanups in Puma/Makefile * removed Antonio from uploaders on his request. Thank you for your work! * bumped standards version to 3.7.2 (no changes needed) * Introduce new package: libpuma-dev, for direct use of the puma library (Closes: #369771) * Introduce new package: libpuma-doc, with updated doxygen.conf containing 2 examples (ccparser and cparser) and doxygen generated docs * Added circular build-depend on itself, testing if the ac++ binary is working on all architectures! * Merge patches from upstream for ag++, fixing command line handling and fixes in the testsuite. -- Reinhard Tartler Mon, 12 Jun 2006 10:53:28 +0200 aspectc++ (0.99+1.0pre3-2ubuntu2) gutsy; urgency=low * Rebuild to deal with launchpad looping. -- LaMont Jones Thu, 11 Oct 2007 21:28:50 -0600 aspectc++ (0.99+1.0pre3-2ubuntu1) feisty; urgency=low * Rebuild for ldbl128 change (powerpc, sparc). * Set Ubuntu maintainer address. -- Matthias Klose Thu, 1 Mar 2007 22:30:19 +0000 aspectc++ (0.99+1.0pre3-2) unstable; urgency=low * Fix some more cleanup() functions, which can go frenzy on at least amd64 (applied upstread) * Fix description, thanks to Simon Waters (Closes: #362738) * reweave Puma to make the patch enabling the build with gcc-4.1 actually active (Closes: #357901, this time for real) -- Reinhard Tartler Sat, 3 Jun 2006 13:14:38 +0200 aspectc++ (0.99+1.0pre3-1) unstable; urgency=low * new upstream release * Apply patch from Martin Michlmayr for g++-4.1 (Closes: #357901) * further (simple) patches in Puma/ and AspectC++ for g++-4.1 * note that Puma needs to be rewoven so that it can be compiled with g++-4.1. This will be done we switch the default compiler version. * Patch JoinPointRepo.cc so that it doesn't loop endlessly anymore. -- Reinhard Tartler Fri, 7 Apr 2006 11:56:35 +0200 aspectc++ (0.99+1.0pre2-4) unstable; urgency=low * Make clean target less noisy * Compile with -O2. This fixes many segfaults on different archs (Closes: #349090) * fix Puma/tools/Makefile to make tools-clean possible at all! * do not clean examples, that's broken anyway * some compile fixes for segfaults on 64 mode architectures. I had to reweave Puma for these fixes, thats the reason for the bloat in .diff.gz (Closes: #345568) * The tests for ag++ need a working ac++ in PATH. ensure this in debian/rules * Install the examples from AspectC++/examples -- Reinhard Tartler Sun, 29 Jan 2006 18:38:54 +0100 aspectc++ (0.99+1.0pre2-3) unstable; urgency=low * polish debian/copyright * set PUMA_CONFIG in debian/rules for running the testsuite * take some Makefiles from upstream CVS for "optimized" linking (suggestion as per suggestion from from upstream) * remove the script update-puma.config. Use dpkg-reconfigure to regenerate the puma.config file -- Reinhard Tartler Tue, 10 Jan 2006 14:09:14 +0100 aspectc++ (0.99+1.0pre2-2) unstable; urgency=low * Don't build shared Puma at all, we link to it statically after all, and no shared lib is exposed anyway, since Puma is way too unstable and no other application is using Puma at the moment. (Closes: #345542) * Fix wrong cast in a debug function. This is quite hackish, and Puma on 64 bit archs is experimental anyway. I'm working with upstream for real 64bit support (Closes: #345541) -- Reinhard Tartler Sun, 1 Jan 2006 22:11:45 +0100 aspectc++ (0.99+1.0pre2-1) unstable; urgency=low * New upstream release. (Closes: #277538) -- Reinhard Tartler Fri, 23 Dec 2005 10:49:40 +0100 aspectc++ (0.99+1.0pre1-1) unstable; urgency=low * installed ac++ and ag++ shellskript wrappers for setting PUMA_CONFIG * introduced update-puma.config shellscript to regenerate /etc/puma.config * move aspectc++ binaries to /usr/lib/aspectc++ -- Reinhard Tartler Wed, 21 Dec 2005 11:52:30 +0100 debian/compat0000644000000000000000000000000211603106362010362 0ustar 7 debian/copyright0000644000000000000000000001451611773530073011136 0ustar This package was debianized by Antonio S. de A. Terceiro on Sat, 20 Nov 2004 00:50:57 -0200. It was downloaded from http://www.aspectc.org Upstream Authors: Olaf Spinczyk, Matthias Urban, Georg Blaschke, Contact through License: Copyright for Puma library: Copyright (C) 1999-2011 The PUMA developer team. Copyright for AspectC++: Copyright (C) 2001-2011 The AspectC++ developer team. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Both the Puma library and AspectC++ are licensed under GNU GPL, which in Debian systems can be found at: /usr/share/common-licenses/GPL-2 The documentation is also released under GPL. This has been discussed on the aspectc++ developers mailing list. The relevant mails are included here for reference: From: Matthias Urban Subject: Re: [Aspectc-developers] Dokumentation in Puma/AspectC++/Ag++ To: Aspectc Developers Mailing List Date: Sun, 20 Apr 2008 14:49:34 +0200 Organization: pure-systems GmbH Hallo, > Kurz: Einerseits webe ich Puma vor, andererseits muss ich die meiste > Dokumentation aus dem Paket werfen, weil keine aussagekräftigen > Nutzungsbedingungen dabei stehen. Das finde ich sehr schade. Ich weiss > dass ueber die Lizenz Dokumentation schon laenger nachgedacht wird, > daher an dieser Stelle nochmal die freundlich/nervige Nachfrage: Gibts > hier schon was neues? Welche Teile der Dokumentation entferne ich in dem > o.g. script zu Unrecht? Habe ich evtl. etwas vergessen? Also meiner Meinung nach fällt die Doku ebenso unter die GPL wie die Sourcen. Zumindestens was die Puma-Doku betrifft, sollte das so sein (werde ich aber nochmal mit Danilo besprechen). Wo muss denn da ein entsprechender Lizenzvermerk hin? Im Puma User's Manual gibt es schon einen License-Abschnitt, wo steht, dass Puma unter der GPL steht (das gleiche gibt es auf der Main Page des doxygen-generierten HTML Reference Manuals). Muss da noch explizit erwähnt werden, dass das auch die Dokumentation umfasst? Dieser ganze Lizenzkram ist wirklich lästig. Übrigens heisst das Puma-Doku Makefile Target jetzt doc anstatt doxygen. Und die generierte Klassendoku steckt jetzt im Unterverzeichnis Puma/doc/RefMan anstatt Puma/doc/doxygen. Nur so als Info für den Fall, dass Du auch die Klassendoku generierst. _______________________________________________ aspectc-developers mailing list aspectc-developers@aspectc.com https://aspectc.com/mailman/listinfo/aspectc-developers From: Olaf Spinczyk Subject: Re: [Aspectc-developers] Dokumentation in Puma/AspectC++/Ag++ To: Aspectc Developers Mailing List Date: Mon, 21 Apr 2008 10:24:57 +0200 Hi, von meiner Seite aus wäre GPL für die Doku auch OK. Dann bräuchten wir noch eine Aussage von pure-systems, von Georg und jemanden, der das überall an der richtigen Stelle einsetzt ... - Olaf From: Matthias Urban Subject: Re: [Aspectc-developers] Dokumentation in Puma/AspectC++/Ag++ To: Aspectc Developers Mailing List Date: Mon, 05 May 2008 14:59:00 +0200 Organization: pure-systems GmbH Hallo, [...] Laut Danilo erhebt pure-systems keine Rechte an der Doku, GPL wäre also auch für pure-systems OK. [...] From: Subject: RE: [Aspectc-developers] Dokumentation in Puma/AspectC++/Ag++ To: Cc: Date: Mon, 7 Jul 2008 14:08:12 +0200 Hi Reinhard, > Es geht gerade um die Frage nach der Lizenz des ag++ manuals. > Bist du mit GPL fuer das Manual einverstanden? Das Dokument > hat derzeit gar kein copyright vermerkt, so dass die Lizenz > nicht ganz klar ist. Aus meiner Sicht ist die Doku für ag++ auch in Ordnung, solange Olaf das auch gut findet. Copyright for Puma/extern/lexertl: Copyright: 2005-2011 Ben Hanson (http://www.benhanson.net/)] License: Boost Software License - Version 1.0 - August 17th, 2003 Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following: The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor. 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, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. debian/get-orig-source.sh0000644000000000000000000000506411603106362012540 0ustar #!/bin/sh # # Script to create a 'pristine' tarball for the aspectc++ source package. # based on a similar script for the debian ffmpeg source package. # Copyright (C) 2008, Reinhard Tartler # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. set -eu usage() { cat >&2 < -h : display help -r : svn revision -c : path to cleanup script -o : output tarball name -d : date in svn compatible format (e.g. 20071224) EOF } debug () { $DEBUG && echo "DEBUG: $*" >&2 } error () { echo "$1" >&2 exit 1; } set +e PARAMS=`getopt hr:c:o:d: "$@"` if test $? -ne 0; then usage; exit 1; fi; set -e eval set -- "$PARAMS" DEBUG=false REVISION= CLEANUPSCRIPT= TARBALL= SVNDATE= while test $# -gt 0 do case $1 in -h) usage; exit 1 ;; -r) REVISION=$2; shift ;; -c) CLEANUPSCRIPT=$2; shift ;; -o) TARBALL=$2; shift ;; -d) SVNDATE=$2; shift ;; --) shift ; break ;; *) echo "Internal error!" ; exit 1 ;; esac shift done # dammit 'basic' regular expressions :/ if [ `expr match $SVNDATE '[0-9][0-9]*$'` -eq 0 ]; then error "svndate $SVNDATE is not a plain revision number" fi REVISION="{${SVNDATE}}" BASEDIRNAME="aspectc++.svn${SVNDATE}" SVNURL="https://svn.aspectc.org/repos/AspectC++-Project/trunk" if [ -z $TARBALL ]; then error "you need to specify a tarballname" fi if [ -n $CLEANUPSCRIPT ] && [ -f $CLEANUPSCRIPT ]; then if [ ! -x $CLEANUPSCRIPT ]; then error "$CLEANUPSCRIPT must be executable" fi fi TMPDIR=`mktemp -d` trap 'rm -rf ${TMPDIR}' EXIT svn export -r${REVISION} --ignore-externals \ $SVNURL \ ${TMPDIR}/${BASEDIRNAME} # get svn externals svn pg svn:externals $SVNURL | \ while read external url; do [ -z $url ] && continue dest="${TMPDIR}/${BASEDIRNAME}/${external}" svn export -r${REVISION} --ignore-externals $url $dest done if [ -n ${CLEANUPSCRIPT} ]; then ( cd ${TMPDIR}/${BASEDIRNAME} && ${CLEANUPSCRIPT} ) fi tar czf ${TARBALL} -C ${TMPDIR} ${BASEDIRNAME} debian/watch0000644000000000000000000000017711727730523010233 0ustar version=3 opts=pasv,uversionmangle=s/^ac-woven/aspectc++-/ \ ftp://akut.aspectc.org/releases/1.1/ac-woven-([\d\.]+)\.tar\.gz debian/libpuma-dev.install0000644000000000000000000000015611773530073012773 0ustar Puma/lib/linux-release/libPuma.a usr/lib Puma/include/* usr/include Puma/extern/lexertl/* usr/include/lexertl debian/rules0000755000000000000000000000747011756773062010274 0ustar #!/usr/bin/make -f # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # disable parallelism inside this makefile (but not submakes) .NOTPARALLEL: # Support multiple makes at once ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS := $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) else NUMJOBS := 1 # on i386 and amd64, we query the system unless overriden by DEB_BUILD_OPTIONS ifeq ($(DEB_HOST_ARCH),i386) NUMJOBS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1) else ifeq ($(DEB_HOST_ARCH),amd64) NUMJOBS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1) endif endif # we seem to have locking issues on kFreeBSD. force single threaded ifeq ($(DEB_HOST_ARCH_OS),kfreebsd) NUMJOBS := 1 endif ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS := -Wall -O0 -g else CFLAGS := -Wall -O2 -g endif export CFLAGS PUMA_CONFIG=$(CURDIR)/puma.config test-builds: build-arch-stamp Ag++/bin/linux-release/ag++ --gen_config ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) $(MAKE) -C AspectC++/ SHARED=1 PUMA_CONFIG=$(PUMA_CONFIG) test PATH=$(CURDIR)/AspectC++/bin/linux-release:$(PATH) \ $(MAKE) -C Ag++/ SHARED=1 PUMA_CONFIG=$(PUMA_CONFIG) test endif build: build-arch build-indep build-arch: build-arch-stamp test-builds build-arch-stamp: dh_testdir # save a copy of Puma that will be woven later cp -r Puma Puma.copy $(MAKE) -C Puma/ -j$(NUMJOBS) compile $(MAKE) -C AspectC++/ SHARED=1 -j$(NUMJOBS) all $(MAKE) -C Ag++/ SHARED=1 -j$(NUMJOBS) all # ok, now we have both an ac++ binary and ag++ binary # now let's weave Puma again in the copy $(MAKE) -C Puma.copy clean $(MAKE) -C Puma.copy all AC=$(CURDIR)/AspectC++/bin/linux-release/ac++ -j$(NUMJOBS) EXTENSIONS="acppext gnuext winext" # let's clean and compile ac++ and ag++ again with new Puma $(MAKE) -C AspectC++ clean $(MAKE) -C Ag++ clean $(MAKE) -C AspectC++ SHARED=1 Puma=$(CURDIR)/Puma.copy -j$(NUMJOBS) all $(MAKE) -C Ag++ SHARED=1 Puma=$(CURDIR)/Puma.copy -j$(NUMJOBS) all # build manpages: docbook-to-man debian/ac++.1.sgml > ac++.1 docbook-to-man debian/ag++.1.sgml > ag++.1 # mark timestamp touch $@ build-indep: build-indep-stamp build-indep-stamp: dh_testdir $(MAKE) -C Puma doc touch $@ clean: dh_testdir dh_testroot dh_clean build-*stamp binary-*stamp puma.config # cleaning up source directories: $(MAKE) -s -C Puma libclean $(MAKE) -s -C Puma tools-clean $(MAKE) -s -C Puma docs-clean $(MAKE) -s -C Puma examples-clean $(MAKE) -s -C AspectC++ clean $(MAKE) -s -C Ag++ clean # remove leftovers from Upstream Makefiles rm -rf AspectC++/tests/RepoVersion/repo.use rm -rf Ag++/DepFiles Ag++/ObjFiles Ag++/bin Ag++/tests/test_11.config rm -rf AspectC++/DepFiles AspectC++/ObjFiles AspectC++/bin rm -rf AspectC++/tests/*/feature.out # remove generated manpages: rm -f ac++.1 ag++.1 rm -rf AspectC++/bin rm -rf Puma.copy/ # standard cleaning: dh_clean # Build architecture-independent files here. binary-indep: build-indep dh_testdir dh_testroot dh_prep dh_installchangelogs dh_installdocs -p libpuma-doc Puma/doc/RefMan/html dh_installexamples -p libpuma-doc Puma/examples/* dh_compress -X.cc -X.map dh_fixperms dh_installdeb -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. binary-arch: build-arch dh_testdir dh_testroot dh_prep dh_installdirs dh_installchangelogs dh_installdocs dh_install dh_installexamples -p aspectc++ AspectC++/examples/* find debian/aspectc++ -name Makefile -exec rm -v {} + find debian/libpuma-doc -name Makefile -exec rm -v {} + dh_installman dh_link dh_strip dh_compress dh_fixperms dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a binary: binary-indep binary-arch .PHONY: build build-indep build-arch clean binary-indep binary-arch binary debian/aspectc++.postrm0000644000000000000000000000016411603106362012203 0ustar #!/bin/sh -e PUMA_CONFIG=/etc/puma.config if [ -e $PUMA_CONFIG ] then rm -f $PUMA_CONFIG fi #DEBHELPER# exit 0 debian/ag++.1.sgml0000644000000000000000000001234211603106362010726 0ustar manpage.1'. You may view the manual page with: `docbook-to-man manpage.sgml | nroff -man | less'. A typical entry in a Makefile or Makefile.am is: manpage.1: manpage.sgml docbook-to-man $< > $@ The docbook-to-man binary is found in the docbook-to-man package. Please remember that if you create the nroff version in one of the debian/rules file targets (such as build), you will need to include docbook-to-man in your Build-Depends control field. --> Antonio"> Terceiro"> 10 February 2005"> 1"> asaterceiro@inf.ufrgs.br"> AspectC++"> Debian"> GNU"> GPL"> ]>
&dhemail;
&dhfirstname; &dhsurname; 2005 &dhusername; &dhdate;
&dhucpackage; &dhsection; ag++ a frontend to ac++ and g++ ag++ -o output input.cpp ag++ -c -o output.o -o input.cpp DESCRIPTION This manual page documents briefly the ag++ command. ag++ is a frontend to ac++ and g++ provided by AspectC++. For a better (and more complete) reference, see the AspectC++ documentation. ag++ is called much like g++ itself. Check the two syntax forms above and follow these explanations: The first syntax form takes input.cpp and generates an executable named output, after weaving into input.cpp all the aspects that crosscut it. input.cpp has restrictions as it would have if we were compiling a regular C++ program: it must have an main() function, and everything you already know. The second syntax form takes input.cpp and generates an object file named output.o, after weaving into input.cpp all the aspects that crosscut it. Note: in both cases, input.cpp isn't actually changed. g++ weaves to temporary files. Common g++ arguments, like -I INDCIR, -L LIBCIR, -l libfoo, and so on, are recognized by ag++ and rightly passed to g++. OPTIONS Further options can be seen in AspectC++ documentation. SEE ALSO ag++ (1), g++ (1). Again: for full reference on AspectC++ usage, see AspectC++ documentation. It can be obtained from http://www.aspectc.org AUTHOR This manual page was written by &dhusername; <&dhemail;> for the &debian; system (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the &gnu; General Public License, Version 2 any later version published by the Free Software Foundation. On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.
debian/cleanup-source.sh0000755000000000000000000000226611603106362012456 0ustar #!/bin/sh # # Script to prepare the aspectc++ package for distribution. # Copyright (C) 2008, Reinhard Tartler # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # this script essentially does 2 things: # - weave Puma (so that aspectc++ is not necessary for building) # - strip of unlicensed material, mainly documentation set -e # executed in the root directory of the unapacked aspectc++ source tree # weave Puma, requires installed package aspectc++ make -C Puma weave make -C Puma tools-clean docs-clean examples-clean libclean debian/control0000644000000000000000000000311111762701601010566 0ustar Source: aspectc++ Section: devel Priority: optional Maintainer: Reinhard Tartler Build-Depends: debhelper (>= 7.0.0), libxml2-dev, docbook-to-man, zlib1g-dev Build-Depends-Indep: doxygen, graphviz, gsfonts Standards-Version: 3.9.3.1 Homepage: http://www.aspectc.org Vcs-Bzr: http://code.launchpad.net/~siretart/aspectc++/debian Package: aspectc++ Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, g++ Description: aspect-oriented programming extension for C++ AspectC++ supports Aspect-Oriented Programming with C++, by providing: . - an aspect language extension to C++. - an aspect weaver that does source-to-source translation. . AspectC++ provides for C++ similar features like its best known cousin, AspectJ, provides for Java. Package: libpuma-dev Architecture: any Section: libdevel Depends: ${misc:Depends} Suggests: libpuma-doc Description: C/C++/AspectC++ Scanner and Parsers libPuma is a library written in C++ for Scanning and Parsing C++ Code. It also does some semantic analysis. . It was written to faciliate the development for tools, which manipulate and/or transfor C/C++ Code. . This package ships a static copy of libPuma only. Package: libpuma-doc Architecture: all Section: doc Depends: ${misc:Depends} Description: C/C++/AspectC++ Scanner and Parsers libPuma is a library written in C++ for Scanning and Parsing C++ Code. It also does some semantic analysis. . It was written to faciliate the development for tools, which manipulate and/or transfor C/C++ Code. . This package ships doxygen generated documentation for Puma. debian/ac++.1.sgml0000644000000000000000000001270611603106362010726 0ustar manpage.1'. You may view the manual page with: `docbook-to-man manpage.sgml | nroff -man | less'. A typical entry in a Makefile or Makefile.am is: manpage.1: manpage.sgml docbook-to-man $< > $@ The docbook-to-man binary is found in the docbook-to-man package. Please remember that if you create the nroff version in one of the debian/rules file targets (such as build), you will need to include docbook-to-man in your Build-Depends control field. --> Antonio"> Terceiro"> 10 February 2005"> 1"> asaterceiro@inf.ufrgs.br"> AspectC++"> Debian"> GNU"> GPL"> ]>
&dhemail;
&dhfirstname; &dhsurname; 2005 &dhusername; &dhdate;
&dhucpackage; &dhsection; &dhpackage; aspect weaver for C++ ac++ -p srcidr -d destdir ac++ -c input -o outputr DESCRIPTION This manual page documents briefly the ac++ command. ac++ is the AspectC++ weaver. ac++ does source-to-source translation. This manual page documents the minimum needed in order to use ac++. For a better reference, see AspectC++ documentation. The first syntax form above invokes ac++ in WPT mode, while the second one invokes it in STU mode (see OPERATION MODES below) OPERATION MODES WPT (whole program transformation) mode does the translation of the entire source tree into another one. This is useful to apply all the aspects of one source tree, generating other source tree with the aspects woven into the sources. To use WPT mode, run ac++ with the first syntax form Specify the original source tree in the srcdir argument, and a name for the destination source tree in the destdir argument. STU (single translation unit) mode does the translation of one translation unit, namely a C++ single file, for exemple. This mode applies to the translation units all aspects that affect it. To use STU mode, run ac++ with the second syntax form. Specify the translation unit in the input argument, and the output file in the output argument. The works as in g++: if omitted, you're telling to ac++ to compile the source into an executable; if present, source will be compiled into an object (.o) file. OPTIONS Further options can be seen in AspectC++ documentation. SEE ALSO ag++ (1), g++ (1). Again: for full reference on AspectC++ usage, see AspectC++ documentation. It can be obtained from http://www.aspectc.org AUTHOR This manual page was written by &dhusername; <&dhemail;> for the &debian; system (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the &gnu; General Public License, Version 2 any later version published by the Free Software Foundation. On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.
debian/aspectc++.install0000644000000000000000000000011511603106362012321 0ustar AspectC++/bin/linux-release/ac++ usr/bin Ag++/bin/linux-release/ag++ usr/bin