diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-arch/unzip | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-arch/unzip')
-rw-r--r-- | app-arch/unzip/Manifest | 2 | ||||
-rw-r--r-- | app-arch/unzip/files/unzip-5.52-CVE-2008-0888.patch | 35 | ||||
-rw-r--r-- | app-arch/unzip/files/unzip-5.52-no-exec-stack.patch | 13 | ||||
-rw-r--r-- | app-arch/unzip/files/unzip-6.0-natspec.patch | 382 | ||||
-rw-r--r-- | app-arch/unzip/files/unzip-6.0-no-exec-stack.patch | 13 | ||||
-rw-r--r-- | app-arch/unzip/metadata.xml | 11 | ||||
-rw-r--r-- | app-arch/unzip/unzip-5.52-r2.ebuild | 58 | ||||
-rw-r--r-- | app-arch/unzip/unzip-6.0-r1.ebuild | 70 | ||||
-rw-r--r-- | app-arch/unzip/unzip-6.0-r2.ebuild | 71 | ||||
-rw-r--r-- | app-arch/unzip/unzip-6.0-r3.ebuild | 72 |
10 files changed, 727 insertions, 0 deletions
diff --git a/app-arch/unzip/Manifest b/app-arch/unzip/Manifest new file mode 100644 index 000000000000..64da7a524a27 --- /dev/null +++ b/app-arch/unzip/Manifest @@ -0,0 +1,2 @@ +DIST unzip552.tar.gz 1140291 SHA256 145d95e2ef1ef9add2e3c97d1340907e33ab8749eb1235372e7f0b7af600a8e9 SHA512 9b852687a7cbce3a6696f8da176f97eded1e99b1f10ae5e4b29bf870df374fea3e4266b3a731d7cdfc28ce5c060a01dd8d3f9c3d8250d1d774273de16d70528b WHIRLPOOL 4148fe091cf9847245be67c7d85fc6fcdcc2a385dad0434757a0c7dea41131085f9bcd5ca6eedc065091a473f27780341921f90ddcae32e73618319da9122d70 +DIST unzip60.tar.gz 1376845 SHA256 036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37 SHA512 0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d WHIRLPOOL eab32d6d0ab100d302b608658a3ae290d3dad4beddccebaf6cb6527102bb238f751ec6482dea68ae62474005de89f11f9e0cf1b1e12bee2ca5a2336a3c0c9808 diff --git a/app-arch/unzip/files/unzip-5.52-CVE-2008-0888.patch b/app-arch/unzip/files/unzip-5.52-CVE-2008-0888.patch new file mode 100644 index 000000000000..368b3eeb122d --- /dev/null +++ b/app-arch/unzip/files/unzip-5.52-CVE-2008-0888.patch @@ -0,0 +1,35 @@ +http://bugs.gentoo.org/213761 + +fix for CVE-2008-0888 + +--- inflate.c ++++ inflate.c +@@ -983,6 +983,7 @@ + unsigned l; /* last length */ + unsigned m; /* mask for bit lengths table */ + unsigned n; /* number of lengths to get */ ++ struct huft *tlp; + struct huft *tl; /* literal/length code table */ + struct huft *td; /* distance code table */ + unsigned bl; /* lookup bits for tl */ +@@ -996,6 +997,8 @@ + int retval = 0; /* error code returned: initialized to "no error" */ + + ++ td = tlp = tl = (struct huft *)NULL; ++ + /* make local bit buffer */ + Trace((stderr, "\ndynamic block")); + b = G.bb; +@@ -1047,9 +1050,9 @@ + while (i < n) + { + NEEDBITS(bl) +- j = (td = tl + ((unsigned)b & m))->b; ++ j = (tlp = tl + ((unsigned)b & m))->b; + DUMPBITS(j) +- j = td->v.n; ++ j = tlp->v.n; + if (j < 16) /* length of code in bits (0..15) */ + ll[i++] = l = j; /* save last length in l */ + else if (j == 16) /* repeat last length 3 to 6 times */ diff --git a/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch b/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch new file mode 100644 index 000000000000..e2869bfe80de --- /dev/null +++ b/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch @@ -0,0 +1,13 @@ +Make sure that the asm files don't incorrectly trigger an executable +stack marking in the final shared library. That's bad, mmmkay. + +--- unzip/crc_i386.S ++++ unzip/crc_i386.S +@@ -238,3 +238,7 @@ + #endif /* i386 || _i386 || _I386 || __i386 */ + + #endif /* !USE_ZLIB */ ++ ++#ifdef __ELF__ ++.section .note.GNU-stack,"",%progbits ++#endif diff --git a/app-arch/unzip/files/unzip-6.0-natspec.patch b/app-arch/unzip/files/unzip-6.0-natspec.patch new file mode 100644 index 000000000000..a1aa83f79787 --- /dev/null +++ b/app-arch/unzip/files/unzip-6.0-natspec.patch @@ -0,0 +1,382 @@ +This patch makes zip use libnatspec to recode file names is national charset. +Initially this patch was written for altlinux: +http://sisyphus.ru/ru/srpm/Sisyphus/zip/patches + +Later it was a bit improved and improved version was posted here (in Russian): +http://www.opennet.ru/tips/info/2494.shtml + +Gentoo reference: +https://bugs.gentoo.org/show_bug.cgi?id=275244 + +diff -pur unzip60orig/unix/configure unzip60/unix/configure +--- unzip60orig/unix/configure 2009-04-16 23:25:12.000000000 +0400 ++++ unzip60/unix/configure 2010-11-26 19:07:43.000000000 +0300 +@@ -17,7 +17,7 @@ CFLAGSR=${CFLAGS} + IZ_BZIP2=${3} + CFLAGS="${CFLAGS} -I. -DUNIX" + LFLAGS1="" +-LFLAGS2="-s" ++LFLAGS2="-l natspec" + LN="ln -s" + + CFLAGS_OPT='' +diff -pur unzip60orig/unix/Makefile unzip60/unix/Makefile +--- unzip60orig/unix/Makefile 2009-01-19 01:41:18.000000000 +0300 ++++ unzip60/unix/Makefile 2010-11-29 14:25:58.461000001 +0300 +@@ -45,14 +45,14 @@ + CC = cc# try using "gcc" target rather than changing this (CC and LD + LD = $(CC)# must match, else "unresolved symbol: ___main" is possible) + AS = as +-LOC = $(D_USE_BZ2) $(LOCAL_UNZIP) ++LOC = $(D_USE_BZ2) -DNO_SETLOCALE $(LOCAL_UNZIP) + AF = $(LOC) + CFLAGS = -O + CF_NOOPT = -I. -I$(IZ_BZIP2) -DUNIX $(LOC) + CF = $(CFLAGS) $(CF_NOOPT) + LFLAGS1 = + LF = -o unzip$E $(LFLAGS1) +-LF2 = -s ++LF2 = -l natspec + + # UnZipSFX flags + SL = -o unzipsfx$E $(LFLAGS1) +@@ -121,7 +121,7 @@ INSTALL_PROGRAM = $(INSTALL) + INSTALL_D = mkdir -p + # on some systems, manext=l and MANDIR=/usr/man/man$(manext) may be appropriate + manext = 1 +-prefix = /usr/local ++prefix = /usr + BINDIR = $(prefix)/bin# where to install executables + MANDIR = $(prefix)/man/man$(manext)# where to install man pages + INSTALLEDBIN = $(BINDIR)/funzip$E $(BINDIR)/unzip$E $(BINDIR)/unzipsfx$E \ +diff -pur unzip60orig/unix/unix.c unzip60/unix/unix.c +--- unzip60orig/unix/unix.c 2009-01-24 02:31:26.000000000 +0300 ++++ unzip60/unix/unix.c 2010-11-26 16:58:35.000000000 +0300 +@@ -30,6 +30,9 @@ + #define UNZIP_INTERNAL + #include "unzip.h" + ++#include <iconv.h> ++#include <natspec.h> ++ + #ifdef SCO_XENIX + # define SYSNDIR + #else /* SCO Unix, AIX, DNIX, TI SysV, Coherent 4.x, ... */ +@@ -1874,3 +1877,44 @@ static void qlfix(__G__ ef_ptr, ef_len) + } + } + #endif /* QLZIP */ ++ ++ ++char OEM_CP[MAX_CP_NAME] = ""; ++char ISO_CP[MAX_CP_NAME] = ""; ++ ++/* Getr the default value of OEM_CP based on the current locale. ++ * ISO_CP is left alone for now. */ ++void init_conversion_charsets() ++{ ++ /* Make a guess only if OEM_CP not already set. */ ++ if(*OEM_CP == '\0') { ++ const char * archive_charset = natspec_get_charset_by_locale(NATSPEC_DOSCS, ""); ++ strncpy(OEM_CP, archive_charset, sizeof(OEM_CP)); ++ } ++ ++ if(*ISO_CP == '\0') { ++ const char * archive_charset = natspec_get_charset_by_locale(NATSPEC_WINCS, ""); ++ strncpy(ISO_CP, archive_charset, sizeof(ISO_CP)); ++ } ++ ++} ++ ++/* Convert a string from OEM_CP to the current locale charset. */ ++inline void oem_intern(char *string) ++{ ++ char *buf = natspec_convert(string, 0, OEM_CP, 0); ++ /* Since Ext_ASCII_TO_Native used only for G.filename[FILNAMESIZE], ++ use FILNAMSIZ as string size */ ++ strncpy(string, buf, FILNAMSIZ); ++ free (buf); ++} ++ ++/* Convert a string from ISO_CP to the current locale charset. */ ++inline void iso_intern(char *string) ++{ ++ char *buf = natspec_convert(string, 0, ISO_CP, 0); ++ /* Since Ext_ASCII_TO_Native used only for G.filename[FILNAMESIZE], ++ use FILNAMSIZ as string size */ ++ strncpy(string, buf, FILNAMSIZ); ++ free (buf); ++} +diff -pur unzip60orig/unix/unxcfg.h unzip60/unix/unxcfg.h +--- unzip60orig/unix/unxcfg.h 2009-04-16 22:36:12.000000000 +0400 ++++ unzip60/unix/unxcfg.h 2010-11-26 16:58:35.000000000 +0300 +@@ -227,4 +227,30 @@ typedef struct stat z_stat; + /* wild_dir, dirname, wildname, matchname[], dirnamelen, have_dirname, */ + /* and notfirstcall are used by do_wild(). */ + ++ ++#define MAX_CP_NAME 25 ++ ++#ifdef SETLOCALE ++# undef SETLOCALE ++#endif ++#define SETLOCALE(category, locale) setlocale(category, locale) ++#include <locale.h> ++ ++#ifdef _ISO_INTERN ++# undef _ISO_INTERN ++#endif ++#define _ISO_INTERN(str1) iso_intern(str1) ++ ++#ifdef _OEM_INTERN ++# undef _OEM_INTERN ++#endif ++#ifndef IZ_OEM2ISO_ARRAY ++# define IZ_OEM2ISO_ARRAY ++#endif ++#define _OEM_INTERN(str1) oem_intern(str1) ++ ++void iso_intern(char *); ++void oem_intern(char *); ++void init_conversion_charsets(void); ++ + #endif /* !__unxcfg_h */ +diff -pur unzip60orig/unzip.c unzip60/unzip.c +--- unzip60orig/unzip.c 2009-04-16 22:26:52.000000000 +0400 ++++ unzip60/unzip.c 2010-11-26 16:58:35.000000000 +0300 +@@ -331,7 +331,9 @@ static ZCONST char Far ZipInfoUsageLine3 + -h print header line -t print totals for listed files or for all\n\ + -z print zipfile comment -T print file times in sortable decimal format\ + \n -C be case-insensitive %s\ +- -x exclude filenames that follow from listing\n"; ++ -x exclude filenames that follow from listing\n\ ++ -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives\n\ ++ -I CHARSET specify a character encoding for UNIX and other archives\n"; + #ifdef MORE + static ZCONST char Far ZipInfoUsageLine4[] = + " -M page output through built-in \"more\"\n"; +@@ -570,8 +572,7 @@ Send bug reports using //www.info-zip.or + #else /* !VMS */ + # ifdef COPYRIGHT_CLEAN + static ZCONST char Far UnzipUsageLine1[] = "\ +-UnZip %d.%d%d%s of %s, by Info-ZIP. Maintained by C. Spieler. Send\n\ +-bug reports using http://www.info-zip.org/zip-bug.html; see README for details.\ ++UnZip %d.%d%d%s of %s, by ALT Linux Team. Original by Info-ZIP.\ + \n\n"; + # else + static ZCONST char Far UnzipUsageLine1[] = "\ +@@ -673,7 +674,9 @@ modifiers:\n\ + -j junk paths (do not make directories) -aa treat ALL files as text\n\ + -U use escapes for all non-ASCII Unicode -UU ignore any Unicode fields\n\ + -C match filenames case-insensitively -L make (some) names \ +-lowercase\n %-42s -V retain VMS version numbers\n%s"; ++lowercase\n %-42s -V retain VMS version numbers\n%s\ ++ -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives\n\ ++ -I CHARSET specify a character encoding for UNIX and other archives\n"; + #endif /* ?VMS */ + #else /* !UNICODE_SUPPORT */ + #ifdef VMS +@@ -692,7 +695,9 @@ modifiers:\n\ + -o overwrite files WITHOUT prompting -a auto-convert any text files\n\ + -j junk paths (do not make directories) -aa treat ALL files as text\n\ + -C match filenames case-insensitively -L make (some) names \ +-lowercase\n %-42s -V retain VMS version numbers\n%s"; ++lowercase\n %-42s -V retain VMS version numbers\n%s\ ++ -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives\n\ ++ -I CHARSET specify a character encoding for UNIX and other archives\n"; + #endif /* ?VMS */ + #endif /* ?UNICODE_SUPPORT */ + +@@ -803,6 +808,10 @@ int unzip(__G__ argc, argv) + #endif /* UNICODE_SUPPORT */ + + ++#ifdef UNIX ++ init_conversion_charsets(); ++#endif ++ + #if (defined(__IBMC__) && defined(__DEBUG_ALLOC__)) + extern void DebugMalloc(void); + +@@ -1336,6 +1345,11 @@ int uz_opts(__G__ pargc, pargv) + argc = *pargc; + argv = *pargv; + ++#ifdef UNIX ++ extern char OEM_CP[MAX_CP_NAME]; ++ extern char ISO_CP[MAX_CP_NAME]; ++#endif ++ + while (++argv, (--argc > 0 && *argv != NULL && **argv == '-')) { + s = *argv + 1; + while ((c = *s++) != 0) { /* "!= 0": prevent Turbo C warning */ +@@ -1517,6 +1531,35 @@ int uz_opts(__G__ pargc, pargv) + } + break; + #endif /* MACOS */ ++#ifdef UNIX ++ case ('I'): ++ if (negative) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: encodings can't be negated")); ++ return(PK_PARAM); ++ } else { ++ if(*s) { /* Handle the -Icharset case */ ++ /* Assume that charsets can't start with a dash to spot arguments misuse */ ++ if(*s == '-') { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ strncpy(ISO_CP, s, sizeof(ISO_CP)); ++ } else { /* -I charset */ ++ ++argv; ++ if(!(--argc > 0 && *argv != NULL && **argv != '-')) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ s = *argv; ++ strncpy(ISO_CP, s, sizeof(ISO_CP)); ++ } ++ while(*(++s)); /* No params straight after charset name */ ++ } ++ break; ++#endif /* ?UNIX */ + case ('j'): /* junk pathnames/directory structure */ + if (negative) + uO.jflag = FALSE, negative = 0; +@@ -1592,6 +1635,35 @@ int uz_opts(__G__ pargc, pargv) + } else + ++uO.overwrite_all; + break; ++#ifdef UNIX ++ case ('O'): ++ if (negative) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: encodings can't be negated")); ++ return(PK_PARAM); ++ } else { ++ if(*s) { /* Handle the -Ocharset case */ ++ /* Assume that charsets can't start with a dash to spot arguments misuse */ ++ if(*s == '-') { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ strncpy(OEM_CP, s, sizeof(OEM_CP)); ++ } else { /* -O charset */ ++ ++argv; ++ if(!(--argc > 0 && *argv != NULL && **argv != '-')) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -O argument")); ++ return(PK_PARAM); ++ } ++ s = *argv; ++ strncpy(OEM_CP, s, sizeof(OEM_CP)); ++ } ++ while(*(++s)); /* No params straight after charset name */ ++ } ++ break; ++#endif /* ?UNIX */ + case ('p'): /* pipes: extract to stdout, no messages */ + if (negative) { + uO.cflag = FALSE; +diff -pur unzip60orig/unzpriv.h unzip60/unzpriv.h +--- unzip60orig/unzpriv.h 2009-04-20 03:59:26.000000000 +0400 ++++ unzip60/unzpriv.h 2010-11-26 16:58:35.000000000 +0300 +@@ -3008,7 +3008,7 @@ char *GetLoadPath OF((__GPRO)); + !(((islochdr) || (isuxatt)) && \ + ((hostver) == 25 || (hostver) == 26 || (hostver) == 40))) || \ + (hostnum) == FS_HPFS_ || \ +- ((hostnum) == FS_NTFS_ && (hostver) == 50)) { \ ++ ((hostnum) == FS_NTFS_/* && (hostver) == 50*/)) { \ + _OEM_INTERN((string)); \ + } else { \ + _ISO_INTERN((string)); \ +diff -pur unzip60orig/zipinfo.c unzip60/zipinfo.c +--- unzip60orig/zipinfo.c 2009-02-08 20:04:30.000000000 +0300 ++++ unzip60/zipinfo.c 2010-11-26 16:58:35.000000000 +0300 +@@ -457,6 +457,10 @@ int zi_opts(__G__ pargc, pargv) + int tflag_slm=TRUE, tflag_2v=FALSE; + int explicit_h=FALSE, explicit_t=FALSE; + ++#ifdef UNIX ++ extern char OEM_CP[MAX_CP_NAME]; ++ extern char ISO_CP[MAX_CP_NAME]; ++#endif + + #ifdef MACOS + uO.lflag = LFLAG; /* reset default on each call */ +@@ -501,6 +505,35 @@ int zi_opts(__G__ pargc, pargv) + uO.lflag = 0; + } + break; ++#ifdef UNIX ++ case ('I'): ++ if (negative) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: encodings can't be negated")); ++ return(PK_PARAM); ++ } else { ++ if(*s) { /* Handle the -Icharset case */ ++ /* Assume that charsets can't start with a dash to spot arguments misuse */ ++ if(*s == '-') { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ strncpy(ISO_CP, s, sizeof(ISO_CP)); ++ } else { /* -I charset */ ++ ++argv; ++ if(!(--argc > 0 && *argv != NULL && **argv != '-')) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ s = *argv; ++ strncpy(ISO_CP, s, sizeof(ISO_CP)); ++ } ++ while(*(++s)); /* No params straight after charset name */ ++ } ++ break; ++#endif /* ?UNIX */ + case 'l': /* longer form of "ls -l" type listing */ + if (negative) + uO.lflag = -2, negative = 0; +@@ -521,6 +554,35 @@ int zi_opts(__G__ pargc, pargv) + G.M_flag = TRUE; + break; + #endif ++#ifdef UNIX ++ case ('O'): ++ if (negative) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: encodings can't be negated")); ++ return(PK_PARAM); ++ } else { ++ if(*s) { /* Handle the -Ocharset case */ ++ /* Assume that charsets can't start with a dash to spot arguments misuse */ ++ if(*s == '-') { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -I argument")); ++ return(PK_PARAM); ++ } ++ strncpy(OEM_CP, s, sizeof(OEM_CP)); ++ } else { /* -O charset */ ++ ++argv; ++ if(!(--argc > 0 && *argv != NULL && **argv != '-')) { ++ Info(slide, 0x401, ((char *)slide, ++ "error: a valid character encoding should follow the -O argument")); ++ return(PK_PARAM); ++ } ++ s = *argv; ++ strncpy(OEM_CP, s, sizeof(OEM_CP)); ++ } ++ while(*(++s)); /* No params straight after charset name */ ++ } ++ break; ++#endif /* ?UNIX */ + case 's': /* default: shorter "ls -l" type listing */ + if (negative) + uO.lflag = -2, negative = 0; diff --git a/app-arch/unzip/files/unzip-6.0-no-exec-stack.patch b/app-arch/unzip/files/unzip-6.0-no-exec-stack.patch new file mode 100644 index 000000000000..7973378704e1 --- /dev/null +++ b/app-arch/unzip/files/unzip-6.0-no-exec-stack.patch @@ -0,0 +1,13 @@ +Make sure that the asm files don't incorrectly trigger an executable +stack marking in the final shared library. That's bad, mmmkay. + +--- unzip/crc_i386.S ++++ unzip/crc_i386.S +@@ -302,3 +302,7 @@ + #endif /* i386 || _i386 || _I386 || __i386 */ + + #endif /* !USE_ZLIB && !CRC_TABLE_ONLY */ ++ ++#if defined(__linux__) && defined(__ELF__) ++.section .note.GNU-stack,"",%progbits ++#endif diff --git a/app-arch/unzip/metadata.xml b/app-arch/unzip/metadata.xml new file mode 100644 index 000000000000..a186eb633331 --- /dev/null +++ b/app-arch/unzip/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>base-system</herd> + <use> + <flag name="natspec">Use <pkg>dev-libs/libnatspec</pkg> to correctly decode non-ascii file names archived in Windows.</flag> + </use> + <upstream> + <remote-id type="sourceforge">infozip</remote-id> + </upstream> +</pkgmetadata> diff --git a/app-arch/unzip/unzip-5.52-r2.ebuild b/app-arch/unzip/unzip-5.52-r2.ebuild new file mode 100644 index 000000000000..9f97ed1ae8c0 --- /dev/null +++ b/app-arch/unzip/unzip-5.52-r2.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils toolchain-funcs flag-o-matic + +DESCRIPTION="unzipper for pkzip-compressed files" +HOMEPAGE="http://www.info-zip.org/" +SRC_URI="mirror://gentoo/${PN}${PV/.}.tar.gz" + +LICENSE="Info-ZIP" +SLOT="0" +KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd" +IUSE="" + +DEPEND="" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-no-exec-stack.patch + epatch "${FILESDIR}"/${P}-CVE-2008-0888.patch #213761 + sed -i \ + -e 's:-O3:$(CFLAGS) $(CPPFLAGS):' \ + -e 's:-O :$(CFLAGS) $(CPPFLAGS) :' \ + -e "s:CC=gcc :CC=$(tc-getCC) :" \ + -e "s:LD=gcc :LD=$(tc-getCC) :" \ + -e "s:AS=gcc :AS=$(tc-getCC) :" \ + -e 's:LF2 = -s:LF2 = :' \ + -e 's:LF = :LF = $(LDFLAGS) :' \ + -e 's:SL = :SL = $(LDFLAGS) :' \ + -e 's:FL = :FL = $(LDFLAGS) :' \ + unix/Makefile \ + || die "sed unix/Makefile failed" +} + +src_compile() { + local TARGET + case ${CHOST} in + i?86*-linux*) TARGET=linux_asm ;; + *-linux*) TARGET=linux_noasm ;; + i?86*-freebsd* | i?86*-dragonfly* | i?86*-openbsd* | i?86*-netbsd*) + TARGET=freebsd ;; # mislabelled bsd with x86 asm + *-freebsd* | *-dragonfly* | *-openbsd* | *-netbsd*) + TARGET=bsd ;; + *-darwin*) TARGET=macosx ;; + *) die "Unknown target, you suck" ;; + esac + append-lfs-flags #104315 + emake -f unix/Makefile ${TARGET} || die "emake failed" +} + +src_install() { + dobin unzip funzip unzipsfx unix/zipgrep || die "dobin failed" + dosym unzip /usr/bin/zipinfo || die + doman man/*.1 + dodoc BUGS History* README ToDo WHERE +} diff --git a/app-arch/unzip/unzip-6.0-r1.ebuild b/app-arch/unzip/unzip-6.0-r1.ebuild new file mode 100644 index 000000000000..cdb7572ab5e2 --- /dev/null +++ b/app-arch/unzip/unzip-6.0-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils toolchain-funcs flag-o-matic + +MY_P="${PN}${PV/.}" + +DESCRIPTION="unzipper for pkzip-compressed files" +HOMEPAGE="http://www.info-zip.org/" +SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz" + +LICENSE="Info-ZIP" +SLOT="0" +KEYWORDS="~alpha amd64 arm hppa ~ia64 m68k ppc ppc64 s390 sh ~sparc x86" +IUSE="bzip2 unicode" + +DEPEND="bzip2? ( app-arch/bzip2 )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-no-exec-stack.patch + sed -i \ + -e '/^CFLAGS/d' \ + -e '/CFLAGS/s:-O[0-9]\?:$(CFLAGS) $(CPPFLAGS):' \ + -e '/^STRIP/s:=.*:=true:' \ + -e "s:\<CC=gcc\>:CC=\"$(tc-getCC)\":" \ + -e "s:\<LD=gcc\>:LD=\"$(tc-getCC)\":" \ + -e "s:\<AS=gcc\>:AS=\"$(tc-getCC)\":" \ + -e 's:LF2 = -s:LF2 = :' \ + -e 's:LF = :LF = $(LDFLAGS) :' \ + -e 's:SL = :SL = $(LDFLAGS) :' \ + -e 's:FL = :FL = $(LDFLAGS) :' \ + -e "/^#L_BZ2/s:^$(use bzip2 && echo .)::" \ + unix/Makefile \ + || die "sed unix/Makefile failed" +} + +src_compile() { + local TARGET + case ${CHOST} in + i?86*-*linux*) TARGET=linux_asm ;; + *linux*) TARGET=linux_noasm ;; + i?86*-*bsd* | \ + i?86*-dragonfly*) TARGET=freebsd ;; # mislabelled bsd with x86 asm + *bsd* | *dragonfly*) TARGET=bsd ;; + *-darwin*) TARGET=macosx ;; + *) die "Unknown target, you suck" ;; + esac + + [[ ${CHOST} == *linux* ]] && append-cppflags -DNO_LCHMOD + use bzip2 && append-cppflags -DUSE_BZIP2 + use unicode && append-cppflags -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE + append-cppflags -DLARGE_FILE_SUPPORT #281473 + + emake \ + -f unix/Makefile \ + ${TARGET} || die "emake failed" +} + +src_install() { + dobin unzip funzip unzipsfx unix/zipgrep || die "dobin failed" + dosym unzip /usr/bin/zipinfo || die + doman man/*.1 + dodoc BUGS History* README ToDo WHERE +} diff --git a/app-arch/unzip/unzip-6.0-r2.ebuild b/app-arch/unzip/unzip-6.0-r2.ebuild new file mode 100644 index 000000000000..1d350a12fcea --- /dev/null +++ b/app-arch/unzip/unzip-6.0-r2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +inherit eutils toolchain-funcs flag-o-matic + +MY_P="${PN}${PV/.}" + +DESCRIPTION="unzipper for pkzip-compressed files" +HOMEPAGE="http://www.info-zip.org/" +SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz" + +LICENSE="Info-ZIP" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="bzip2 natspec unicode" + +DEPEND="bzip2? ( app-arch/bzip2 ) + natspec? ( dev-libs/libnatspec )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-no-exec-stack.patch + use natspec && epatch "${FILESDIR}/${PN}-6.0-natspec.patch" #275244 + sed -i \ + -e '/^CFLAGS/d' \ + -e '/CFLAGS/s:-O[0-9]\?:$(CFLAGS) $(CPPFLAGS):' \ + -e '/^STRIP/s:=.*:=true:' \ + -e "s:\<CC=gcc\>:CC=\"$(tc-getCC)\":" \ + -e "s:\<LD=gcc\>:LD=\"$(tc-getCC)\":" \ + -e "s:\<AS=gcc\>:AS=\"$(tc-getCC)\":" \ + -e 's:LF2 = -s:LF2 = :' \ + -e 's:LF = :LF = $(LDFLAGS) :' \ + -e 's:SL = :SL = $(LDFLAGS) :' \ + -e 's:FL = :FL = $(LDFLAGS) :' \ + -e "/^#L_BZ2/s:^$(use bzip2 && echo .)::" \ + unix/Makefile \ + || die "sed unix/Makefile failed" +} + +src_compile() { + local TARGET + case ${CHOST} in + i?86*-*linux*) TARGET=linux_asm ;; + *linux*) TARGET=linux_noasm ;; + i?86*-*bsd* | \ + i?86*-dragonfly*) TARGET=freebsd ;; # mislabelled bsd with x86 asm + *bsd* | *dragonfly*) TARGET=bsd ;; + *-darwin*) TARGET=macosx ;; + *) die "Unknown target, you suck" ;; + esac + + [[ ${CHOST} == *linux* ]] && append-cppflags -DNO_LCHMOD + use bzip2 && append-cppflags -DUSE_BZIP2 + use unicode && append-cppflags -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE + append-cppflags -DLARGE_FILE_SUPPORT #281473 + + emake \ + -f unix/Makefile \ + ${TARGET} || die "emake failed" +} + +src_install() { + dobin unzip funzip unzipsfx unix/zipgrep || die "dobin failed" + dosym unzip /usr/bin/zipinfo || die + doman man/*.1 + dodoc BUGS History* README ToDo WHERE +} diff --git a/app-arch/unzip/unzip-6.0-r3.ebuild b/app-arch/unzip/unzip-6.0-r3.ebuild new file mode 100644 index 000000000000..210563bcb5a1 --- /dev/null +++ b/app-arch/unzip/unzip-6.0-r3.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +inherit eutils toolchain-funcs flag-o-matic + +MY_P="${PN}${PV/.}" + +DESCRIPTION="unzipper for pkzip-compressed files" +HOMEPAGE="http://www.info-zip.org/" +SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz" + +LICENSE="Info-ZIP" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux" +IUSE="bzip2 natspec unicode" + +DEPEND="bzip2? ( app-arch/bzip2 ) + natspec? ( dev-libs/libnatspec )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-no-exec-stack.patch + use natspec && epatch "${FILESDIR}/${PN}-6.0-natspec.patch" #275244 + sed -i \ + -e '/^CFLAGS/d' \ + -e '/CFLAGS/s:-O[0-9]\?:$(CFLAGS) $(CPPFLAGS):' \ + -e '/^STRIP/s:=.*:=true:' \ + -e "s:\<CC=gcc\>:CC=\"$(tc-getCC)\":" \ + -e "s:\<LD=gcc\>:LD=\"$(tc-getCC)\":" \ + -e "s:\<AS=gcc\>:AS=\"$(tc-getCC)\":" \ + -e 's:LF2 = -s:LF2 = :' \ + -e 's:LF = :LF = $(LDFLAGS) :' \ + -e 's:SL = :SL = $(LDFLAGS) :' \ + -e 's:FL = :FL = $(LDFLAGS) :' \ + -e "/^#L_BZ2/s:^$(use bzip2 && echo .)::" \ + -e 's:$(AS) :$(AS) $(ASFLAGS) :g' \ + unix/Makefile \ + || die "sed unix/Makefile failed" +} + +src_compile() { + local TARGET + case ${CHOST} in + i?86*-*linux*) TARGET=linux_asm ;; + *linux*) TARGET=linux_noasm ;; + i?86*-*bsd* | \ + i?86*-dragonfly*) TARGET=freebsd ;; # mislabelled bsd with x86 asm + *bsd* | *dragonfly*) TARGET=bsd ;; + *-darwin*) TARGET=macosx ;; + *) die "Unknown target, you suck" ;; + esac + + [[ ${CHOST} == *linux* ]] && append-cppflags -DNO_LCHMOD + use bzip2 && append-cppflags -DUSE_BZIP2 + use unicode && append-cppflags -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE + append-cppflags -DLARGE_FILE_SUPPORT #281473 + + ASFLAGS="${ASFLAGS} $(get_abi_var CFLAGS)" emake \ + -f unix/Makefile \ + ${TARGET} || die "emake failed" +} + +src_install() { + dobin unzip funzip unzipsfx unix/zipgrep || die "dobin failed" + dosym unzip /usr/bin/zipinfo || die + doman man/*.1 + dodoc BUGS History* README ToDo WHERE +} |