From 75678fc99992c557bb450a5e08a06134e0ad12dd Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Wed, 28 Feb 2018 21:03:17 +0000 Subject: Import tcc_0.9.27-5.debian.tar.xz [dgit import tarball tcc 0.9.27-5 tcc_0.9.27-5.debian.tar.xz] --- changelog | 819 +++++++++++++++++++++ compat | 1 + control | 49 ++ copyright | 235 ++++++ libtcc-dev.install | 2 + .../0001-Disable-test-not-working-on-i386.patch | 46 ++ ...isable-stack-protector-in-runtime-library.patch | 28 + ...t-dead-code-on-x86-in-prepare_dynamic_rel.patch | 39 + patches/0004-Fix-pthread-option-handling.patch | 32 + patches/series | 4 + rules | 35 + source/format | 1 + tcc.doc-base | 13 + tcc.docs | 2 + tcc.examples | 1 + tcc.info | 1 + tcc.install | 3 + tcc.manpages | 1 + tcc.postinst | 24 + tcc.prerm | 22 + watch | 5 + 21 files changed, 1363 insertions(+) create mode 100644 changelog create mode 100644 compat create mode 100644 control create mode 100644 copyright create mode 100644 libtcc-dev.install create mode 100644 patches/0001-Disable-test-not-working-on-i386.patch create mode 100644 patches/0002-Disable-stack-protector-in-runtime-library.patch create mode 100644 patches/0003-Prevent-dead-code-on-x86-in-prepare_dynamic_rel.patch create mode 100644 patches/0004-Fix-pthread-option-handling.patch create mode 100644 patches/series create mode 100755 rules create mode 100644 source/format create mode 100644 tcc.doc-base create mode 100644 tcc.docs create mode 100644 tcc.examples create mode 100644 tcc.info create mode 100644 tcc.install create mode 100644 tcc.manpages create mode 100644 tcc.postinst create mode 100644 tcc.prerm create mode 100644 watch diff --git a/changelog b/changelog new file mode 100644 index 0000000..7c26ba2 --- /dev/null +++ b/changelog @@ -0,0 +1,819 @@ +tcc (0.9.27-5) unstable; urgency=medium + + * debian/control: + + Update Vcs fields. + * debian/patches: + + update forwarded status of the patch. + + add patch fixing -pthread option handling (Closes: #891592, thanks + Vincent Lefevre). + + -- Thomas Preud'homme Wed, 28 Feb 2018 21:03:17 +0000 + +tcc (0.9.27-4) unstable; urgency=medium + + * debian/patches: + + Fix patch disabling stack protector. + + -- Thomas Preud'homme Sat, 24 Feb 2018 16:47:28 +0000 + +tcc (0.9.27-3) unstable; urgency=medium + + * debian/patches: + + Guard dead code on non x86 target to fix armel build. + * debian/rules: + + Run tests sequentially to fix test failure on i386. + + -- Thomas Preud'homme Sat, 24 Feb 2018 16:28:50 +0000 + +tcc (0.9.27-2) unstable; urgency=medium + + * debian/patches: + + Rework patch to disable stack protector to work on systems where stack + protector is the default for the compiler (Closes: #854471, thanks + Graham Inggs). + + -- Thomas Preud'homme Sat, 24 Feb 2018 00:19:16 +0000 + +tcc (0.9.27-1) unstable; urgency=medium + + * New upstream release (Closes: #884664). + * debian/copyright: + + Update copyright information. + + Use secure format URL. + * debian/compat: + + Bump debhelper compat. + * debian/control: + + Update versioned dependency on debhelper. + + Use canonical URL for Vcs-Browser. + + Bump standard version (no changes needed). + * debian/watch: + + Use secure URL. + + -- Thomas Preud'homme Fri, 23 Feb 2018 23:39:54 +0000 + +tcc (0.9.27~git20161217.cd9514ab-3) unstable; urgency=medium + + * debian/patches: + + Disable stack protection when building libtcc1.a or tcc fails to link + against it, as happens in test3. + + -- Thomas Preud'homme Sun, 18 Dec 2016 16:06:55 +0000 + +tcc (0.9.27~git20161217.cd9514ab-2) unstable; urgency=medium + + * Fix disabling of broken test on i386. + * Enable build on arm64. + + -- Thomas Preud'homme Sat, 17 Dec 2016 22:55:20 +0000 + +tcc (0.9.27~git20161217.cd9514ab-1) unstable; urgency=medium + + * New upstream snapshot (Closes: #786905, #775992, #824473, #675024, + #698351, #770657). + * debian/patches: + + Skip a test broken for i386. + + Fix version string to match package version (Closes: #786908). + * Update configure step and dh_install steps considering upstream changes. + * Switch to secure URIs for Vcs fields. + * Bump Standards-Version to 3.9.8 (no changes needed). + * Enable all hardening. + * debian/watch: simplify and enable signature checking. + + -- Thomas Preud'homme Sat, 17 Dec 2016 21:29:50 +0000 + +tcc (0.9.27~git20151227.933c223-1) unstable; urgency=medium + + * New upstream snapshot. + * Skip tests exected to fail on ARM. + + -- Thomas Preud'homme Sun, 27 Dec 2015 13:10:43 +0800 + +tcc (0.9.27~git20151225.f15c0a9-1) unstable; urgency=medium + + * New upstream snapshot (Closes: #808008). + + -- Thomas Preud'homme Sat, 26 Dec 2015 18:42:39 +0800 + +tcc (0.9.27~git20140923.9d7fb33-3) unstable; urgency=low + + * New patch to fix tests2 on armel. + + -- Matteo Cypriani Fri, 17 Oct 2014 15:29:00 -0400 + +tcc (0.9.27~git20140923.9d7fb33-2) unstable; urgency=low + + * Deactivate one more test for armel again. + + -- Matteo Cypriani Thu, 09 Oct 2014 09:44:01 -0400 + +tcc (0.9.27~git20140923.9d7fb33-1) unstable; urgency=low + + * New upstream snapshot. + * Deactivate kfreebsd builds. + * Deactivate one more test for armel. + * debian/copyright: update packaging authors. + * Bump Standards-Version to 3.9.6 (no changes needed). + * Fix cleaning (revert changes on examples' shebang). + + -- Matteo Cypriani Wed, 08 Oct 2014 10:16:49 -0400 + +tcc (0.9.27~git20140907.87d879a-1) unstable; urgency=medium + + * New upstream snapshot. + * Stop overriding LDFLAGS for the tests, since it is now done upstream. + * debian/patches: + + Disable BTESTS completely. + + Disable floating-point test for ARM soft-float: disable one more test. + + -- Matteo Cypriani Sun, 07 Sep 2014 12:51:32 -0400 + +tcc (0.9.27~git20140801.14745bd-1) unstable; urgency=medium + + * New upstream snapshot. + * Upload to unstable. + * Add Matteo Cypriani as an Uploader. + * Bump Standards-Version to 3.9.5. + * Improve watch file (thanks Bart Martens). + * Switch from texi2html to makeinfo. + * Override LDFLAGS for the tests. + * Disable floating-point test for armel. + + -- Matteo Cypriani Fri, 05 Sep 2014 23:35:30 -0400 + +tcc (0.9.26-1) experimental; urgency=low + + * New upstream release: + + Add support for hardfloat calling convention (Closes: #645692). + * debian/rules: + + Use DEB_HOST_ARCH to set the default ABI (Closes: #651840). + + Directly install tcc-doc.html in the right directory instead of relying + on dh_installdocs. + + Scripts in /usr/share/doc/tcc/examples contain correct interpreter path + again. + * debian/control: + + Enable build on armhf. (Closes: #645673, thanks Loïc Minier). + + Update my maintainer email address. + + Remove Arthur Loiret from Uploaders, as agreed. + + Remove DMUA flag: it's both unneeded (DD maintenance) and useless now + (http://lists.debian.org/debian-devel-announce/2012/11/msg00006.html). + * debian/copyright: + + Update copyright and licenses according to what has changed in this new + release and reformat Copyright entries. + + Update my maintainer email address. + * debian/patches: + + Allow preprocessor flags to be passed to upstream Makefile through + environment. + * Remove unused lintian overrides about incorrect interpreter and lack of + fortification. + + -- Thomas Preud'homme Sat, 16 Feb 2013 20:05:48 +0100 + +tcc (0.9.26~git20120612.ad5f375-6) unstable; urgency=low + + [Paul Tagliamonte] + * Uploading Tom's fixes on his behalf. Although he's signed this upload + (he issued a debdiff), I've prepared this upload. Fix verified on + i386. + + [Thomas Preud'homme] + * debian/patches: + + Fix incorrect reading of long long values on architecture with 32bits + registers like i386 and armel (Closes: #681281). + + -- Thomas Preud'homme Sat, 21 Jul 2012 03:43:35 +0200 + +tcc (0.9.26~git20120612.ad5f375-5) unstable; urgency=low + + * debian/patches: + + Correctly handle integer promotion in patch fixing incorrect shift + result type (Closes: #679123). + * debian/control: + + Set myself as Maintainer instead of Aurélien Gérôme as a result of him + being MIA (Closes: #677782). + + -- Thomas Preud'homme Sun, 08 Jul 2012 17:36:15 +0200 + +tcc (0.9.26~git20120612.ad5f375-4) unstable; urgency=low + + * debian/patches: + + Cherry-pick patch fixing incorrect shift result type (Closes: #679123). + * debian/control: + + Update Vcs-Browser URL. + + -- Thomas Preud'homme Wed, 27 Jun 2012 15:14:25 +0200 + +tcc (0.9.26~git20120612.ad5f375-3) unstable; urgency=low + + * debian/patches: + + Disable the new callsave_test test on arm since it uses alloca which is + not supported on arm (yet). + + -- Thomas Preud'homme Wed, 13 Jun 2012 22:31:30 +0200 + +tcc (0.9.26~git20120612.ad5f375-2) unstable; urgency=low + + * debian/patches: + + Correctly handle multiarch on Kfreebsd and Hurd. + + -- Thomas Preud'homme Wed, 13 Jun 2012 18:34:11 +0200 + +tcc (0.9.26~git20120612.ad5f375-1) unstable; urgency=low + + * New upstream snapshot + * debian/patches: + + Fix R_ARM_REL32 relocation. + + Expands arguments of configure script in order to accept ${prefix}. + * debian/control: + + Remove initial capital in package synopsis. + + Update build dependency version on debhelper to reflect compatibility. + * debian/rules: + + Adapt to new upstream build system. + + Remove build flags export as debhelper already does it. + + Remove useless comments. + * Bump compatibility to 9. + * Add lintian overrides: + + Upstream explicitly disable functions fortification, so do we. + + Scripts in /usr/share/doc/tcc/examples are examples and need thus to be + modified before used. + + -- Thomas Preud'homme Tue, 12 Jun 2012 18:06:17 +0200 + +tcc (0.9.26~git20120104.83d57c0-5) unstable; urgency=low + + * Document that -b is only available on i386 (Closes: #663692). + * Correctly parse unsigned long constants (ex: 1UL) on amd64 + (Closes: #663711). + * Support arguments to linker options to be passed in separate linker + options as in -Wl,-rpath -Wl, (Closes: #663693). + + -- Thomas Preud'homme Thu, 15 Mar 2012 00:39:47 +0100 + +tcc (0.9.26~git20120104.83d57c0-4) unstable; urgency=low + + * Upload to unstable. + + -- Thomas Preud'homme Tue, 06 Mar 2012 00:19:03 +0100 + +tcc (0.9.26~git20120104.83d57c0-3) experimental; urgency=low + + * Fix typo of an error about unknown size with bounded pointer arithmetic + (Closes: #655110, thanks Urs Janssen). + * Fix loading of LLOCAL floats (Closes: #656995). + * Use version 1.0 for DEP5 copyright. + * Bump Standards-Version to 3.9.3 (no changes needed). + + -- Thomas Preud'homme Mon, 05 Mar 2012 23:13:42 +0100 + +tcc (0.9.26~git20120104.83d57c0-2) experimental; urgency=low + + * Fix armel FTBFS by not compiling tccasm.c, as inline assembly is not + supported on armel (Closes: #654904). + + -- Thomas Preud'homme Fri, 06 Jan 2012 18:37:50 +0100 + +tcc (0.9.26~git20120104.83d57c0-1) experimental; urgency=low + + * New upstream snapshot: + + Make tcc search crt*.o files at the right location (Closes: #654631). + + Incorporate the fix for linkage of named file in loader script + (Closes: #654528). + * debian/control: + + Convert libtcc-dev to multiarch. + * debian/rules: + + Adapt to the new upstream build system. + + -- Thomas Preud'homme Thu, 05 Jan 2012 15:45:51 +0100 + +tcc (0.9.25-13) unstable; urgency=low + + * Fix linkage of named file in loader script (Closes: #654528). + + -- Thomas Preud'homme Wed, 04 Jan 2012 16:50:01 +0100 + +tcc (0.9.25-12) unstable; urgency=medium + + * Correct size_t and ptrdiff_t type on amd64 (Closes: #654436). + + -- Thomas Preud'homme Wed, 04 Jan 2012 11:30:56 +0100 + +tcc (0.9.25-11) unstable; urgency=medium + + * Change ELF interpreter from /lib/ld-linux-x86-64.so.2 — contrary to what + announces previous entry — to /lib64/ld-linux-x86-64.so.2 + (Closes: #653941). + + -- Thomas Preud'homme Tue, 03 Jan 2012 15:53:32 +0100 + +tcc (0.9.25-10) unstable; urgency=medium + + * Stop wrongly using multiarch dynamic loader as elf interpreter, eg. back + to use /lib64/ld-linux-x86-64.so.2 for amd64 (Closes: #636541). + + -- Thomas Preud'homme Wed, 03 Aug 2011 18:04:35 +0200 + +tcc (0.9.26~git20110616.330d2ee-4) experimental; urgency=low + + * Replace old patch fixing Hurd FTBFS by the one accepted upstream. + * Insert missing changelog for tcc 0.9.25-9. + * Stop wrongly using multiarch dynamic loader as elf interpreter (eg. back + to use /lib64/ld-linux-x86-64.so.2 for amd64). + + -- Thomas Preud'homme Sun, 31 Jul 2011 21:43:49 +0200 + +tcc (0.9.26~git20110616.330d2ee-3) experimental; urgency=low + + * Use any-i386 and any-amd64 instead of hardcoded list of architectures. + * Fix Hurd FTBFS by forcing expr_cond to only consider constant expression + outside functions. + + -- Thomas Preud'homme Sun, 31 Jul 2011 13:49:20 +0200 + +tcc (0.9.25-9) unstable; urgency=low + + * Stop exporting tcc_add_file2(), tcc_add_sysfile() and + tcc_add_syslibrary_path() functions added for multiarch transitions. + * Use any-i386 and any-amd64 instead of hardcoded list of architectures. + + -- Thomas Preud'homme Sun, 24 Jul 2011 21:27:09 +0200 + +tcc (0.9.26~git20110616.330d2ee-2) experimental; urgency=low + + * Don't define strtof and strtold on Debian GNU/kFreeBSD (fix FTBFS). + + -- Thomas Preud'homme Fri, 15 Jul 2011 18:16:26 +0200 + +tcc (0.9.26~git20110616.330d2ee-1) experimental; urgency=low + + * New upstream snapshot: + + Fix design of previous VLA implementation + + Allow jumps > 32MB for -run on ARM. (Closes: #592618) + + * debian/patches: + + Remove all merged patches + + Add 0001-Default-to-create-progs-with-symbols-incl.-debug.patch: + create unstripped program with debug infos. + + Add 0002-Make-ex1.c-and-ex4.c-be-executable-on-any-systems.patch + + * debian/copyright: + + document origin of source code. + + * debian/rules: + + Use dpkg-buildflags to set build flags (CPPFLAGS, CFLAGS and LDFLAGS). + + Only call dh_auto_clean if config.mak exists. + + Keep tcc directory in /usr/lib/tcc. + + * Point Vcs-* to anonscm.debian.org. + + -- Thomas Preud'homme Tue, 12 Jul 2011 16:59:57 +0200 + +tcc (0.9.25-8) unstable; urgency=low + + * Modify debian/rules to use patch added in 0.9.25-7 (Closes: #632089). + * Get DEB_HOST_MULTIARCH from dpkg-architecture to ensure it is set when + calling debian/rules manually. + * Fix build failure on i386: array_test should not define any parameter. + * Make patch for multilib consistent with regards to the filenames opened. + + -- Thomas Preud'homme Mon, 11 Jul 2011 14:22:57 +0200 + +tcc (0.9.25-7) unstable; urgency=medium (fix #632089) + + * Search system files and library in multilib path (Closes: #632089). + + -- Thomas Preud'homme Sun, 10 Jul 2011 17:22:36 +0200 + +tcc (0.9.25-6) unstable; urgency=low + + * Reactivate support for armel arch. + * Attempt to solve test suite failure on armel. + * Register documentation with doc-base. + * Fix the license of win32/tools/tiny_libmaker.c with author's agreement. + * Convert package to multiarch. + * debian/patches: + + Stricter test about declaration of static function without file scope in + local block to not error out in wrong situations (regression fix). + + Add function and variable assembly labels. + * debian/compat: + + Bump debhelper compatibility from 7 to 8 (no changes needed). + * debian/copyright: + + Update and convert to DEP5 candidate format. + + Update address of FSF. + + Remove duplicate notices and give redistribution license. + * debian/control: + + Bump Standards-Version to 3.9.2 (no changes needed). + + Improve synopsis wording for tcc. + * Remove useless debian/tcc.dirs file + + -- Thomas Preud'homme Mon, 18 Oct 2010 15:58:01 +0200 + +tcc (0.9.25-5) unstable; urgency=low + + * Drop support for armel arch. + + -- Thomas Preud'homme Sun, 05 Sep 2010 23:15:47 +0200 + +tcc (0.9.25-4) unstable; urgency=low + + * Fix bashims in configure and gcctestsuite.sh. + * Add support for indirect functions as externals. + * Bump Standard-Version from 3.8.4 to 3.9.1 (no changes needed). + * debian/control: + - Improve package description for libtcc-dev. + + -- Thomas Preud'homme Tue, 10 Aug 2010 00:10:30 +0200 + +tcc (0.9.25-3) unstable; urgency=low + + * Change Vcs fields to reference Alioth. + * Don't load libtcc1.a if not available (fix a FTBFS on armel). + * Link alias symbols together. (Closes: #452876) + * Support C99 Variable-Length Arrays. (Closes: #439135) + + -- Thomas Preud'homme Sat, 01 May 2010 23:44:46 +0200 + +tcc (0.9.25-2) unstable; urgency=low + + * Make tcc build on armv5tel, armv6j and armv7a architectures. + * Clean patches submitted upstream following upstream advice. + * Also clean 438097_configure_allow_nostrip.diff patch. + * Convert patches to DEP3 patch format. + + -- Thomas Preud'homme Tue, 20 Apr 2010 22:44:37 +0200 + +tcc (0.9.25-1) unstable; urgency=low + + * New upstream release (Closes: #549100, LP: #500296). + - Supports amd64 architecture. + * Fix Hurd FTBFS (Closes: #532503). + * Improve tcc handling of ld scripts: libs in GROUP command are + searched repeatedly, as required. + * Add support for kfreebsd-amd64. + * Cherry-pick 55cb217 from upstream to fix incorrect elf output on + FreeBSD kernels. + * Make the package compile on armel (Closes: #506517). + * x86_64_alloca.diff: Add alloca on x86-64, from upstream commits + 8ea8305 and dca2b15, to fix a test failure. + * 528902_texi_direntry.diff: Add @dircategory and @direntry + (Closes: #528902). + * Complain for static fct declared without file scope + (Closes: #170105). + * Install the libtcc library in the new libtcc-dev package + (Closes: #234245). + * Remove unnecessary patches. + - 322913_fix_casts_from_fp_to_bool.diff (already fixed in 0.9.24) + - 474883_fix_segmentation_fault_when_compiling.diff + - tcc-doc_texi_formatting.diff + * Rewrite 419203_fix_sizeof_parse_error.diff patch. + * Rebase patch on tcc version 0.9.25. + * Add debian/watch file. + * Switch to dpkg-source 3.0 (quilt) format. + * Add DESTDIR support in configure script. + * Move info file creation from debian/rules to upstream Makefile. + * Use a dh based debian/rule Makefile. + * Bump debhelper compatibility from 4 to 7 (no changes needed). + * Bump Standard-Version from 3.8.0 to 3.8.4 (no changes needed). + * Fill Vcs-Browser and Vcs-Git fields. + * Correctly support DEB_BUILD_OPTIONS. + * Don't rebuild the package if it was already built before. + + -- Thomas Preud'homme Sat, 17 Apr 2010 20:41:12 +0200 + +tcc (0.9.24-1) unstable; urgency=high + + [ Aurélien GÉRÔME ] + * Change my email address in the Maintainer field. + * Bump Standards-Version to 3.8.0. + * Remove no longer used XS-Vcs-Git and XS-Vcs-Browser fields. + * Add the DM-Upload-Allowed field for Arthur. + + [ Thomas Preud'homme ] + * New Upstream Version + - tcc now supports typename as structure field name (closes: #278698) + - A long long value used as a test expression ignores the + upper 32 bits at runtime (closes: #304082) + * Remove unecessary patches: + - 352202_fix_int_overflow.diff + - 283066_add_va_copy_define.diff (already disabled) + - 430209_fix_bound_check_error.diff + * Clean all patches (no fuzz or offset problem anymore) + * Add patch from Bradley Smith to allow compilation with gcc 4.3 + (closes: #474883) + * Add tcc-doc_texi_formatting.diff to correct formatting of tcc-doc.texi + + -- Thomas Preud'homme Mon, 16 Jun 2008 03:31:38 +0200 + +tcc (0.9.24~cvs20070502-2) unstable; urgency=low + + * 430209_fix_bound_check_error.diff: Add. (Closes: #430209) + - Thanks to Thomas Preud'homme. + * 438097_configure_allow_nostrip.diff: Add. (Closes: #438097) + * Add myself to Uploaders, update debian/copyright accordingly. + * debian/control: Use the new Homepage field. + * Port on hurd-i386: + - patches/series/hurd.diff: Add. + - debian/control: Update Architecture list. + + -- Arthur Loiret Fri, 12 Oct 2007 04:31:48 +0200 + +tcc (0.9.24~cvs20070502-1) unstable; urgency=low + + [ Aurélien GÉRÔME ] + * New maintainer and co-maintainer. (Closes: #420643) + * Add the XS-Vcs-Git and XS-Vcs-Browser fields to debian/control. + * Update homepage with the tiny URL in debian/control. + * Remove unused ${misc:Depends} from debian/control. + * Short description in debian/control is not a sentence, so start + by a lowercase. + * Remove unused debhelper tools from debian/rules. + * Run test suite in debian/rules. + * Remove .pc/ directory after build in the clean target of + debian/rules. + * Update debian/copyright. + * TinyCC is no longer maintained upstream: use the latest CVS which + contains some fixes. See the upstream Changelog for details. + + Fix SIGSEGV due to tcc_load_dll() which read past the end of + a buffer. (Closes: #418360) + * Add quilt support. (Closes: #419423) + Break out monolithic patch into the following patches: + + buildsys.diff: + - use "-O2 -g -Wall" as the Debian Policy recommends; + + fhs.diff: + - use FHS paths in examples and documentation; + + 259619_error_init_char_array_with_non_literal.diff; + + 283066_add_va_copy_define.diff: + - disabled, merged upstream; + + 322913_fix_casts_from_fp_to_bool.diff; + + 372908_add_kfreebsd_arch.diff. + * Add 352202_fix_int_overflow.diff to fix CVE-2006-0635, thanks to + Rob Landley. (Closes: #352202) + + The sizeof, __alignof, and __alignof__ statements now return + an unsigned int. + + Add a test case for this vulnerability. + + [ Thomas Preud'homme ] + * Add 419203_fix_sizeof_parse_error.diff to fix a bad parsing in + sizeof. (Closes: #419203) + + Add two tests for sizeof without parenthesis. + + -- Aurélien GÉRÔME Tue, 08 May 2007 02:36:47 +0200 + +tcc (0.9.23-4) unstable; urgency=low + + * debian/control: Update description as suggested by Moritz Muehlenhoff + (see #352202). + + -- Romain Francoise Sat, 23 Sep 2006 21:56:45 +0200 + +tcc (0.9.23-3) unstable; urgency=low + + * Add support for kfreebsd-i386, with thanks to Pierre Chifflier + (closes: #372908). + * Bumped Standards-Version to 3.7.2, no changes needed. + + -- Romain Francoise Fri, 14 Jul 2006 09:50:20 +0200 + +tcc (0.9.23-2) unstable; urgency=low + + * Apply patch from Marcelo Jimenez fixing + casts from floating point types to _Bool (closes: #322913). + * debian/copyright: Use new FSF postal address. + + -- Romain Francoise Fri, 2 Sep 2005 19:53:58 +0200 + +tcc (0.9.23-1) unstable; urgency=low + + * New upstream release. + * Bumped Standards-Version to 3.6.2.1, no changes needed. + + -- Romain Francoise Sat, 18 Jun 2005 10:13:55 +0200 + +tcc (0.9.22-2) unstable; urgency=low + + * Apply patch from Hasso Tepper adding a va_copy macro + to stdarg.h (closes: #283066). + + -- Romain Francoise Sat, 27 Nov 2004 18:00:46 +0100 + +tcc (0.9.22-1) unstable; urgency=low + + * New upstream release (closes: #279007). + * Dropped patch by Brian Gough for const casts, this release has a + better fix. + + -- Romain Francoise Mon, 8 Nov 2004 22:41:38 +0100 + +tcc (0.9.21-1) unstable; urgency=low + + * New upstream release, fixes long long arithmetic (closes: #267644). + * debian/rules: Pass docdir to the upstream Makefile. + * debian/tcc.docs: Remove tcc-doc.html, now installed. + * Commented out build and installation of ARM and C67 binaries in + upstream's Makefile since we don't ship them (yet). + * This is the "TCC can now build a bootable Linux kernel" release. + + -- Romain Francoise Tue, 26 Oct 2004 12:22:36 +0200 + +tcc (0.9.20-5) unstable; urgency=low + + * Error out with an explicit message when trying to initialize a + character array with something that's not a literal (optionally + enclosed in braces) as per C99 6.7.8:14; thanks to Antti-Juhani + Kaijanaho who did all the work (closes: #259619). + + -- Romain Francoise Sat, 24 Jul 2004 15:11:35 +0200 + +tcc (0.9.20-4) unstable; urgency=low + + * Apply patch from Antti-Juhani Kaijanaho to allow + _Bool in bit-fields (closes: #259614). + + -- Romain Francoise Fri, 23 Jul 2004 17:38:29 +0200 + +tcc (0.9.20-3) unstable; urgency=low + + * Apply patch from Brian Gough to fix + problems with const casts (closes: #199463). + * debian/control: + + Add URL markers to description. + + Change Recommends to libc6-dev | libc-dev. + + -- Romain Francoise Sat, 19 Jun 2004 23:16:37 +0200 + +tcc (0.9.20-2) unstable; urgency=low + + * debian/changelog: Convert to UTF-8. + * Replace "/usr/local/bin/tcc" with "/usr/bin/tcc" in documentation, + since Debian ships tcc in /usr. + * debian/rules: remove libtcc1.a in clean target. + + -- Romain Francoise Mon, 6 Oct 2003 19:49:43 +0200 + +tcc (0.9.20-1) unstable; urgency=low + + * New upstream release. + + -- Romain Francoise Sun, 5 Oct 2003 12:37:16 +0200 + +tcc (0.9.19-4) unstable; urgency=low + + * debian/control: Add Recommends on libc-dev, as it will most probably + be useful. + * Backport fixes from upstream CVS to fix problems with .gnu.linkonce + sections (closes: #213047). + + -- Romain Francoise Sat, 4 Oct 2003 18:21:01 +0200 + +tcc (0.9.19-3) unstable; urgency=low + + * Backport fix from upstream CVS to fix problems with ld (closes: + #213047). + + -- Romain Francoise Sun, 28 Sep 2003 13:22:11 +0200 + +tcc (0.9.19-2) unstable; urgency=low + + * debian/control: Update maintainer email address. + * debian/copyright: Ditto. + * Bumped Standards-Version to 3.6.1.0, no changes needed. + + -- Romain Francoise Sat, 27 Sep 2003 12:19:03 +0200 + +tcc (0.9.19-1) unstable; urgency=low + + * New upstream release (closes: #192939, #193491). + * debian/copyright: upstream changed license to LGPL. + * Bumped Standards-Version to 3.5.10, no changes needed. + + -- Romain Francoise Sat, 24 May 2003 19:23:17 +0200 + +tcc (0.9.18-3) unstable; urgency=low + + * Dummy upload, sponsor forgot to upload the .orig.tar.gz last time. + + -- Romain Francoise Sun, 20 Apr 2003 17:25:20 +0200 + +tcc (0.9.18-2) unstable; urgency=low + + * debian/control: Provide c-compiler. Suggested by José Luis González + González . + * debian/rules: Policy requires that shared object files be stripped, so + strip object files installed in /usr/lib. + + -- Romain Francoise Sat, 19 Apr 2003 15:05:16 +0200 + +tcc (0.9.18-1) unstable; urgency=low + + * New upstream release (closes: #189457). + * debian/rules: + - Upstream tarball now includes a configure script, use it. + - Do not install tcclib, it should be a separate binary package + (and a shared library). + - Upstream now provides a clean Texinfo file, so install it as + /usr/share/info/tcc.info. + * debian/control: Add Build-Depends on texinfo. + * debian/tcc.{postinst,prerm}: Handle installation of the Info file. + + -- Romain Francoise Fri, 18 Apr 2003 20:37:09 +0200 + +tcc (0.9.16-7) unstable; urgency=low + + * Add new maintainer contact in debian/copyright. + * Now use ${misc:Depends} in debian/control. + * Bumped Standards-Version to 3.5.9. + * Get rid of some DH_COMPAT variables. + + -- Romain Francoise Tue, 25 Mar 2003 16:00:54 +0100 + +tcc (0.9.16-6) unstable; urgency=low + + * I'm now the official maintainer, package sponsored by Cyril Bouthors + until my NM application is finished. + + -- Romain Francoise Sun, 2 Mar 2003 18:49:54 +0100 + +tcc (0.9.16-5) unstable; urgency=low + + * Include examples from the upstream tarball since they demonstrate most + of the interesting features of TCC. + * Non-maintainer release. + + -- Romain Francoise Sun, 9 Feb 2003 20:40:16 +0100 + +tcc (0.9.16-4) unstable; urgency=low + + * Lintian check: refer to the Debian common license file for the GNU + GPL in debian/copyright. + * Reword the description and add upstream URL in debian/control. + * Now use debhelper V4. + * Non-maintainer release. + + -- Romain Francoise Sun, 9 Feb 2003 19:51:47 +0100 + +tcc (0.9.16-3) unstable; urgency=low + + * Bumped Standards-Version to 3.5.8. + * Non-maintainer release. + + -- Romain Francoise Sat, 8 Feb 2003 17:07:52 +0100 + +tcc (0.9.16-2) unstable; urgency=low + + * Register tcc as an alternative to cc (closes: #175178). + * Non-maintainer release. + + -- Romain Francoise Sat, 8 Feb 2003 15:54:03 +0100 + +tcc (0.9.16-1) unstable; urgency=low + + * New upstream release (closes: #179213). + * Non-maintainer release. + + -- Romain Francoise Sat, 8 Feb 2003 11:36:57 +0100 + +tcc (0.9.14-1) unstable; urgency=low + + * New upstream release (closes: #170094, #170095, #170100, #170103). + + -- Cyril Bouthors Sun, 24 Nov 2002 19:02:56 +0100 + +tcc (0.9.13-1) unstable; urgency=low + + * New upstream release + + -- Cyril Bouthors Tue, 12 Nov 2002 01:59:39 +0100 + +tcc (0.9.12-1) unstable; urgency=low + + * New upstream release + + -- Cyril Bouthors Mon, 9 Sep 2002 07:51:47 +0200 + +tcc (0.9.11-1) unstable; urgency=low + + * New upstream release + + -- Cyril Bouthors Mon, 2 Sep 2002 17:47:10 +0200 + +tcc (0.9.10-1) unstable; urgency=low + + * New upstream release (closes: #155234) + + -- Cyril Bouthors Mon, 19 Aug 2002 11:15:56 +0200 + +tcc (0.9.9-1) unstable; urgency=low + + * New upstream release (closes: #151269). + + -- Cyril Bouthors Sun, 28 Jul 2002 04:27:42 +0200 + +tcc (0.9.7-2) unstable; urgency=low + + * Set Debian Architecture to i386 only (closes: #150919). + + -- Cyril Bouthors Mon, 1 Jul 2002 13:26:56 +0200 + +tcc (0.9.7-1) unstable; urgency=low + + * Initial Release (closes: #150241). + + -- Cyril Bouthors Mon, 17 Jun 2002 13:27:14 +0200 diff --git a/compat b/compat new file mode 100644 index 0000000..b4de394 --- /dev/null +++ b/compat @@ -0,0 +1 @@ +11 diff --git a/control b/control new file mode 100644 index 0000000..eaffc67 --- /dev/null +++ b/control @@ -0,0 +1,49 @@ +Source: tcc +Section: devel +Priority: optional +Maintainer: Thomas Preud'homme +Uploaders: Matteo Cypriani +Build-Depends: debhelper (>= 11), texinfo, perl +Standards-Version: 4.1.3 +Homepage: http://www.tinycc.org/ +Vcs-Browser: https://salsa.debian.org/debian/tcc +Vcs-Git: https://salsa.debian.org/debian/tcc.git + +Package: tcc +Architecture: hurd-i386 i386 amd64 armel armhf arm64 +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: libc6-dev | libc-dev +Provides: c-compiler +Description: small ANSI C compiler + TCC (for Tiny C Compiler) is a small and fast ANSI C compiler. It + generates optimized x86 code, and can compile, assemble, and link + several times faster than 'gcc -O0'. Any C dynamic library can be used + directly. It includes an optional memory and bounds checker, and + bounds-checked code can be mixed freely with standard code. C script + is also supported via the usual hash-bang mechanism. + . + NOTE: TCC is still somewhat experimental and is not recommended for + production use. The code it generates is much less optimized than what + GCC produces, and compiler bugs can have serious security consequences + for your program. + +Package: libtcc-dev +Section: libdevel +Architecture: hurd-i386 i386 amd64 armel armhf arm64 +Multi-Arch: same +Depends: ${misc:Depends} +Description: fast library for dynamic code generation + Libtcc is a library that uses tcc, a compiler several times faster than + 'gcc -O0' to perform dynamic code generation. It exposes in its API all + operations tcc performs to generate a binary from sources: setting + header and library paths, compiling program from a source file, + manipulating its symbols and handling relocation of its code among + other things. Libtcc is also able to compile from a buffer. + . + This package contains the static library and header file for TCC (Tiny + C Compiler). + . + NOTE: libtcc is still somewhat experimental and is not recommended for + production use. The code it generates is much less optimized than what + GCC produces, and compiler bugs can have serious security consequences + for your program. diff --git a/copyright b/copyright new file mode 100644 index 0000000..30802cd --- /dev/null +++ b/copyright @@ -0,0 +1,235 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Tiny C Compiler +Upstream-Contact: tinycc-devel@nongnu.org +Source: https://download.savannah.gnu.org/releases/tinycc/ +License: GPL-2+ + +Files: * +Copyright: 2003 Fabrice Bellard +License: LGPL-2.1+ +Comments: For files in tests/test2/, see tests/test2/LICENSE. + The situation is clarified further in a thread on tinycc-devel mailing list: + http://lists.nongnu.org/archive/html/tinycc-devel/2013-02/msg00178.html + +Files: debian/* +Copyright: 2002 Cyril Bouthors + 2003-2006 Romain Francoise + 2007-2010 Aurélien Gérôme + 2007-2010 Arthur Loiret + 2007-2018 Thomas Preud'homme + 2014 Matteo Cypriani +License: Expat + +Files: lib/armeabi.c +Copyright: 2013 Thomas Preud'homme +License: Expat + +Files: lib/libtcc1.c texi2pod.pl il-opcodes.h +Copyright: 1987-1988, 1992, 1994-1995, 1999-2001 Free Software Foundation, Inc. + 2002 Fabrice Bellard +License: GPL-2+ + +Files: stab.def lib/bcheck.c arm-gen.c c67-gen.c i386-asm.c i386-gen.c il-gen.c + libtcc.c tccasm.c tcc.c tcccoff.c tccelf.c tccgen.c tcc.h tccpe.c + tccpp.c tccrun.c tcctools.c x86_64-gen.c +Copyright: 1988, 1997 Free Software Foundation, Inc. + 2001-2004 Fabrice Bellard + 2003 Daniel Glöckner + 2003-2004 TK + 2005-2007 grischka + 2007 Timppa + 2008 Shinichiro Hamaji + 2009 Frédéric Feret + 2012 Thomas Preud'homme +License: LGPL-2+ + +Files: elf.h +Copyright: 1995-2012 Free Software Foundation, Inc. +License: LGPL-2.1+ + +Files: include/varargs.h win32/include/* +Copyright: none +License: public-domain +Comment: This file has no copyright assigned and is placed in the Public Domain. + +Files: win32/include/values.h +Copyright: 2003 Fabrice Bellard +License: LGPL-2.1+ + +Files: win32/include/_mingw.h win32/include/stdint.h +Copyright: none +License: public-domain +Comment: + THIS SOFTWARE IS NOT COPYRIGHTED + . + This source code is offered for use in the public domain. You may + use, modify or distribute it freely. + . + This code is distributed in the hope that it will be useful but + WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + DISCLAIMED. This includes but is not limited to warranties of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +Files: win32/include/tcc/tcc_libm.h +Copyright: 2005-2014 Rich Felker, et al. +License: MIT + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in 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: + . + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + . + 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 AUTHORS 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 IN THE SOFTWARE. + +Files: tests/pp/0* tests/pp/10* tests/pp/11* tests/pp/12* tests/pp/13* +Copyright: S. C. Johnson +License: BSD-3-clause +Comment: + credits: 01..13.c from the pcc cpp-tests suite + http://undeadly.org/cgi?action=article&sid=20070915195203 + +Files: tests/tests2/0* tests/tests2/1* tests/tests2/2* tests/tests2/3* + tests/tests2/4* tests/tests2/5* tests/tests2/6* +Copyright: 2009-2011 Zik Saleeba + 1997 Terry R. McConnell + Terry R. McConnell +License: BSD-3-clause + +Files: tests/tests2/46_grep.c +Copyright: 1980 DECUS +License: DECUS + General permission to copy or modify, but not for profit, is + hereby granted, provided that the above copyright notice is + included and reference made to the fact that reproduction + privileges were granted by DECUS. + +Files: tests/testfp.c lib/lib-arm64.c arm64-gen.c +Copyright: 2014-2018 Edmund Grimley Evans +License: FSFAP + Copying and distribution of this file, with or without modification, + are permitted in any medium without royalty provided the copyright + notice and this notice are preserved. This file is offered as-is, + without any warranty. + +License: BSD-3-clause + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + * Neither the name of the Zik Saleeba nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: LGPL-2+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + . + This library 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 + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, + USA. + . + On Debian systems, the full text of the GNU Library General Public + License version 2 can be found in the file + `/usr/share/common-licenses/LGPL-2'. + +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + . + This library 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 + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, + USA. + . + On Debian systems, the full text of the GNU Lesser General Public + License version 2.1 can be found in the file + `/usr/share/common-licenses/LGPL-2.1'. + +License: GPL-2+ + 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. + . + On Debian systems, the full text of the GNU General Public License + version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in 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: + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + 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 + AUTHORS 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 IN + THE SOFTWARE. + +License: public-domain + This source code is offered for use in the public domain. diff --git a/libtcc-dev.install b/libtcc-dev.install new file mode 100644 index 0000000..8d12b2f --- /dev/null +++ b/libtcc-dev.install @@ -0,0 +1,2 @@ +usr/lib/*/libtcc.a +usr/include diff --git a/patches/0001-Disable-test-not-working-on-i386.patch b/patches/0001-Disable-test-not-working-on-i386.patch new file mode 100644 index 0000000..2c41791 --- /dev/null +++ b/patches/0001-Disable-test-not-working-on-i386.patch @@ -0,0 +1,46 @@ +From 557d51707f31b75321fc25d80e5bf249895d171c Mon Sep 17 00:00:00 2001 +From: Thomas Preud'homme +Date: Sun, 17 Feb 2013 23:39:08 +0100 +Subject: Disable test not working on i386 + +get_asm_string function does not compile with GCC on i386 and thus makes +the testsuite fail on i386. This is a testism so it is fine do simply +disable the test on such platform while upstream fixes it. + +Origin: vendor +Forwarded: no +Last-Update: 2018-02-21 +--- + tests/tcctest.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/tests/tcctest.c b/tests/tcctest.c +index 57670bea..3e0ae8bc 100644 +--- a/tests/tcctest.c ++++ b/tests/tcctest.c +@@ -3184,6 +3184,7 @@ void override_func2 (void) + printf ("asmc: override2\n"); + } + ++#ifndef __i386__ + /* This checks a construct used by the linux kernel to encode + references to strings by PC relative references. */ + extern int bug_table[] __attribute__((section("__bug_table"))); +@@ -3205,6 +3206,7 @@ char * get_asm_string (void) + char * str = ((char*)bug_table) + bug_table[1]; + return str; + } ++#endif + + /* This checks another constructs with local labels. */ + extern unsigned char alld_stuff[]; +@@ -3460,7 +3462,9 @@ void asm_test(void) + the global one, not the local decl from this function. */ + asm volatile(".weak override_func3\n.set override_func3, base_func"); + override_func3(); ++#ifndef __i386__ + printf("asmstr: %s\n", get_asm_string()); ++#endif + asm_local_label_diff(); + asm_local_statics(); + #endif diff --git a/patches/0002-Disable-stack-protector-in-runtime-library.patch b/patches/0002-Disable-stack-protector-in-runtime-library.patch new file mode 100644 index 0000000..8a8ba6c --- /dev/null +++ b/patches/0002-Disable-stack-protector-in-runtime-library.patch @@ -0,0 +1,28 @@ +From dc6b796293da8f4f411e369f241b41ce1c49ee77 Mon Sep 17 00:00:00 2001 +From: Thomas Preud'homme +Date: Sun, 17 Feb 2013 23:39:08 +0100 +Subject: Disable stack protector in runtime library + +tcc fails to run when compiled by itself and its runtime library was +built with any variant of -fstack-protector. This is why test3 fails +when libtcc1.a is build with -fstack-protector. + +Origin: vendor +Forwarded: no +Last-Update: 2018-02-24 +--- + lib/Makefile | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lib/Makefile b/lib/Makefile +index 0c1ec54d..be25e884 100644 +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -20,6 +20,7 @@ XCFG = $(or $(findstring -win,$T),-unx) + # in order to use gcc, tyoe: make -libtcc1-usegcc=yes + arm-libtcc1-usegcc ?= no + ++CFLAGS:=$(CFLAGS) -fno-stack-protector + ifeq "$($(T)-libtcc1-usegcc)" "yes" + XCC = $(CC) + XAR = $(AR) diff --git a/patches/0003-Prevent-dead-code-on-x86-in-prepare_dynamic_rel.patch b/patches/0003-Prevent-dead-code-on-x86-in-prepare_dynamic_rel.patch new file mode 100644 index 0000000..c6cd839 --- /dev/null +++ b/patches/0003-Prevent-dead-code-on-x86-in-prepare_dynamic_rel.patch @@ -0,0 +1,39 @@ +From 849a2f5b4f59a0359d9d3f3620709d92e2beb8d1 Mon Sep 17 00:00:00 2001 +From: Thomas Preud'homme +Date: Sat, 24 Feb 2018 15:50:14 +0000 +Subject: Prevent dead code on !x86 in prepare_dynamic_rel + +In prepare_dynamic_rel() on non x86 targets the count++ statements +appear before any case label and are therefore dead code. This triggers +build failure when building with -Werror. This patch adds an extra guard +around all the x86 case labels and their associated action, leaving just +the default case label for non x86 targets which builds fine. + +Origin: vendor +Forwarded: http://repo.or.cz/tinycc.git/commit/776aa0c093cc6083cbb61d0db8e303209b21bbad +Applied-Upstream: commit:776aa0c093cc6083cbb61d0db8e303209b21bbad +Last-Updated: 2018-02-24 +--- + tccelf.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/tccelf.c b/tccelf.c +index 70d47e15..be540d51 100644 +--- a/tccelf.c ++++ b/tccelf.c +@@ -873,6 +873,7 @@ static int prepare_dynamic_rel(TCCState *s1, Section *sr) + sym_index = ELFW(R_SYM)(rel->r_info); + type = ELFW(R_TYPE)(rel->r_info); + switch(type) { ++#if defined(TCC_TARGET_I386) || defined(TCC_TARGET_X86_64) + #if defined(TCC_TARGET_I386) + case R_386_32: + if (!get_sym_attr(s1, sym_index, 0)->dyn_index +@@ -896,6 +897,7 @@ static int prepare_dynamic_rel(TCCState *s1, Section *sr) + if (get_sym_attr(s1, sym_index, 0)->dyn_index) + count++; + break; ++#endif + default: + break; + } diff --git a/patches/0004-Fix-pthread-option-handling.patch b/patches/0004-Fix-pthread-option-handling.patch new file mode 100644 index 0000000..09ed02d --- /dev/null +++ b/patches/0004-Fix-pthread-option-handling.patch @@ -0,0 +1,32 @@ +From 7c2261b8eef7a22a9a33a73d0a5f12039973ed5b Mon Sep 17 00:00:00 2001 +From: Michael Matz +Date: Sat, 23 Dec 2017 14:49:07 +0100 +Subject: Fix -pthread option handling + +Adding -pthread confused option parsing as the number of file counting +came out wrong. + +Origin: upstream, http://repo.or.cz/tinycc.git/commit/3b27b3b1d1ae953f5ecb37f5bc95758499d66971 +Bug-Debian: https://bugs.debian.org/891592 +Last-Update: 2018-02-28 +Applied-Upstream: commit:3b27b3b1d1ae953f5ecb37f5bc95758499d66971 +--- + tcc.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/tcc.c b/tcc.c +index cd887d17..ee55ddda 100644 +--- a/tcc.c ++++ b/tcc.c +@@ -298,8 +298,10 @@ redo: + if (n > 1 && s->outfile) + tcc_error("cannot specify output file with -c many files"); + } else { +- if (s->option_pthread) ++ if (s->option_pthread) { + tcc_set_options(s, "-lpthread"); ++ n = s->nb_files; ++ } + } + + if (s->do_bench) diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..5a658b6 --- /dev/null +++ b/patches/series @@ -0,0 +1,4 @@ +0001-Disable-test-not-working-on-i386.patch +0002-Disable-stack-protector-in-runtime-library.patch +0003-Prevent-dead-code-on-x86-in-prepare_dynamic_rel.patch +0004-Fix-pthread-option-handling.patch diff --git a/rules b/rules new file mode 100755 index 0000000..3264d1c --- /dev/null +++ b/rules @@ -0,0 +1,35 @@ +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS=hardening=+all + +override_dh_auto_configure: + dh_auto_configure -- --docdir=/usr/share/doc/tcc +ifeq (arm,$(DEB_HOST_ARCH_CPU)) +ifeq (armel,$(DEB_HOST_ARCH)) + sed 's/\(TCC_ARM_VERSION\) .*/\1 4/' config.h +else ifeq (armhf,$(DEB_HOST_ARCH)) + sed 's/\(TCC_ARM_VERSION\) .*/\1 7/' config.h +endif +endif + +override_dh_auto_test: + dh_auto_test --no-parallel + +override_dh_auto_clean: + [ ! -f config.mak ] || dh_auto_clean + +override_dh_installexamples: + sed -i 1s@/usr/local/bin/tcc@/usr/bin/tcc@ examples/*.c + dh_installexamples + sed -i 1s@/usr/bin/tcc@/usr/local/bin/tcc@ examples/*.c + +clean: + rm -f build + dh clean + +build: + dh build + touch build # As recommended by policy §4.9 + +%: + dh $@ diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/tcc.doc-base b/tcc.doc-base new file mode 100644 index 0000000..6953d87 --- /dev/null +++ b/tcc.doc-base @@ -0,0 +1,13 @@ +Document: tcc-doc +Title: Tiny C Compiler Reference Documentation +Author: Fabrice Bellard +Abstract: This manual documents version of the Tiny C Compiler. +Section: Programming + +Format: HTML +Index: /usr/share/doc/tcc/tcc-doc.html +Files: /usr/share/doc/tcc/tcc-doc.html + +Format: Info +Index: /usr/share/info/tcc-doc.info.gz +Files: /usr/share/info/tcc-doc.info.gz diff --git a/tcc.docs b/tcc.docs new file mode 100644 index 0000000..724e084 --- /dev/null +++ b/tcc.docs @@ -0,0 +1,2 @@ +README +TODO diff --git a/tcc.examples b/tcc.examples new file mode 100644 index 0000000..e39721e --- /dev/null +++ b/tcc.examples @@ -0,0 +1 @@ +examples/* diff --git a/tcc.info b/tcc.info new file mode 100644 index 0000000..1cac8df --- /dev/null +++ b/tcc.info @@ -0,0 +1 @@ +tcc-doc.info diff --git a/tcc.install b/tcc.install new file mode 100644 index 0000000..aae5992 --- /dev/null +++ b/tcc.install @@ -0,0 +1,3 @@ +usr/bin +usr/lib/*/tcc +usr/share diff --git a/tcc.manpages b/tcc.manpages new file mode 100644 index 0000000..8772edd --- /dev/null +++ b/tcc.manpages @@ -0,0 +1 @@ +tcc.1 diff --git a/tcc.postinst b/tcc.postinst new file mode 100644 index 0000000..12fda3d --- /dev/null +++ b/tcc.postinst @@ -0,0 +1,24 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + update-alternatives --quiet --install /usr/bin/cc cc /usr/bin/tcc 10 \ + --slave /usr/share/man/man1/cc.1.gz cc.1.gz \ + /usr/share/man/man1/tcc.1.gz; + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/tcc.prerm b/tcc.prerm new file mode 100644 index 0000000..f1816e7 --- /dev/null +++ b/tcc.prerm @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +case "$1" in + remove|upgrade|deconfigure) + if [ -L /usr/doc/tcc ]; then + rm -f /usr/doc/tcc + fi + update-alternatives --quiet --remove cc /usr/bin/tcc; + ;; + failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/watch b/watch new file mode 100644 index 0000000..62971c1 --- /dev/null +++ b/watch @@ -0,0 +1,5 @@ +version=4 + +opts="pgpmode=auto" +https://download.savannah.gnu.org/releases/tinycc/ \ +@PACKAGE@@ANY_VERSION@(?i)\.(?:tar\.xz|tar\.bz2|tar\.gz) debian uupdate -- cgit v1.2.3