create core package
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import get
|
||||
|
||||
WorkDir="%s%s" % (get.srcNAME(), get.srcVERSION().replace(".",""))
|
||||
|
||||
def build():
|
||||
autotools.make('-f unix/Makefile LF2="" CC="%s" CF="%s -I. -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" unzips' % (get.CC(),get.CFLAGS()))
|
||||
|
||||
def install():
|
||||
for bin in ["unzip", "funzip", "unzipsfx", "unix/zipgrep"]:
|
||||
pisitools.dobin(bin)
|
||||
|
||||
pisitools.dosym("/usr/bin/unzip", "/usr/bin/zipinfo")
|
||||
|
||||
pisitools.doman("man/*.1")
|
||||
pisitools.dodoc("BUGS", "History*", "README", "ToDo", "WHERE")
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -up unzip60/zipinfo.c.attribs-overflow unzip60/zipinfo.c
|
||||
--- unzip60/zipinfo.c.attribs-overflow 2009-11-30 09:55:39.000000000 +0100
|
||||
+++ unzip60/zipinfo.c 2009-11-30 09:56:42.844263244 +0100
|
||||
@@ -1881,7 +1881,7 @@ static int zi_short(__G) /* return PK-
|
||||
#endif
|
||||
int k, error, error_in_archive=PK_COOL;
|
||||
unsigned hostnum, hostver, methid, methnum, xattr;
|
||||
- char *p, workspace[12], attribs[16];
|
||||
+ char *p, workspace[12], attribs[17];
|
||||
char methbuf[5];
|
||||
static ZCONST char dtype[5]="NXFS"; /* normal, maximum, fast, superfast */
|
||||
static ZCONST char Far os[NUM_HOSTS+1][4] = {
|
||||
@@ -0,0 +1,176 @@
|
||||
diff -up unzip60/extract.c.close unzip60/extract.c
|
||||
--- unzip60/extract.c.close 2009-03-14 02:32:52.000000000 +0100
|
||||
+++ unzip60/extract.c 2009-11-19 08:17:23.481263496 +0100
|
||||
@@ -1924,24 +1924,21 @@ static int extract_or_test_member(__G)
|
||||
|
||||
#ifdef VMS /* VMS: required even for stdout! (final flush) */
|
||||
if (!uO.tflag) /* don't close NULL file */
|
||||
- close_outfile(__G);
|
||||
+ error = close_outfile(__G);
|
||||
#else
|
||||
#ifdef DLL
|
||||
if (!uO.tflag && (!uO.cflag || G.redirect_data)) {
|
||||
if (G.redirect_data)
|
||||
FINISH_REDIRECT();
|
||||
else
|
||||
- close_outfile(__G);
|
||||
+ error = close_outfile(__G);
|
||||
}
|
||||
#else
|
||||
if (!uO.tflag && !uO.cflag) /* don't close NULL file or stdout */
|
||||
- close_outfile(__G);
|
||||
+ error = close_outfile(__G);
|
||||
#endif
|
||||
#endif /* VMS */
|
||||
|
||||
- /* GRR: CONVERT close_outfile() TO NON-VOID: CHECK FOR ERRORS! */
|
||||
-
|
||||
-
|
||||
if (G.disk_full) { /* set by flush() */
|
||||
if (G.disk_full > 1) {
|
||||
#if (defined(DELETE_IF_FULL) && defined(HAVE_UNLINK))
|
||||
diff -up unzip60/unix/unix.c.close unzip60/unix/unix.c
|
||||
--- unzip60/unix/unix.c.close 2009-01-24 00:31:26.000000000 +0100
|
||||
+++ unzip60/unix/unix.c 2009-11-19 08:33:25.568389171 +0100
|
||||
@@ -1096,10 +1096,41 @@ static int get_extattribs(__G__ pzt, z_u
|
||||
#ifndef MTS
|
||||
|
||||
/****************************/
|
||||
+/* Function CloseError() */
|
||||
+/***************************/
|
||||
+
|
||||
+int CloseError(__G)
|
||||
+ __GDEF
|
||||
+{
|
||||
+ int errval = PK_OK;
|
||||
+
|
||||
+ if (fclose(G.outfile) < 0) {
|
||||
+ switch (errno) {
|
||||
+ case ENOSPC:
|
||||
+ /* Do we need this on fileio.c? */
|
||||
+ Info(slide, 0x4a1, ((char *)slide, "%s: write error (disk full?). Continue? (y/n/^C) ",
|
||||
+ FnFilter1(G.filename)));
|
||||
+ fgets(G.answerbuf, 9, stdin);
|
||||
+ if (*G.answerbuf == 'y') /* stop writing to this file */
|
||||
+ G.disk_full = 1; /* pass to next */
|
||||
+ else
|
||||
+ G.disk_full = 2; /* no: exit program */
|
||||
+
|
||||
+ errval = PK_DISK;
|
||||
+ break;
|
||||
+
|
||||
+ default:
|
||||
+ errval = PK_WARN;
|
||||
+ }
|
||||
+ }
|
||||
+ return errval;
|
||||
+} /* End of CloseError() */
|
||||
+
|
||||
+/****************************/
|
||||
/* Function close_outfile() */
|
||||
/****************************/
|
||||
|
||||
-void close_outfile(__G) /* GRR: change to return PK-style warning level */
|
||||
+int close_outfile(__G)
|
||||
__GDEF
|
||||
{
|
||||
union {
|
||||
@@ -1108,6 +1139,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
} zt;
|
||||
ulg z_uidgid[2];
|
||||
int have_uidgid_flg;
|
||||
+ int errval = PK_OK;
|
||||
|
||||
have_uidgid_flg = get_extattribs(__G__ &(zt.t3), z_uidgid);
|
||||
|
||||
@@ -1141,16 +1173,16 @@ void close_outfile(__G) /* GRR: chang
|
||||
Info(slide, 0x201, ((char *)slide,
|
||||
"warning: symbolic link (%s) failed: mem alloc overflow\n",
|
||||
FnFilter1(G.filename)));
|
||||
- fclose(G.outfile);
|
||||
- return;
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
+ return errval ? errval : PK_WARN;
|
||||
}
|
||||
|
||||
if ((slnk_entry = (slinkentry *)malloc(slnk_entrysize)) == NULL) {
|
||||
Info(slide, 0x201, ((char *)slide,
|
||||
"warning: symbolic link (%s) failed: no mem\n",
|
||||
FnFilter1(G.filename)));
|
||||
- fclose(G.outfile);
|
||||
- return;
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
+ return errval ? errval : PK_WARN;
|
||||
}
|
||||
slnk_entry->next = NULL;
|
||||
slnk_entry->targetlen = ucsize;
|
||||
@@ -1174,10 +1206,10 @@ void close_outfile(__G) /* GRR: chang
|
||||
"warning: symbolic link (%s) failed\n",
|
||||
FnFilter1(G.filename)));
|
||||
free(slnk_entry);
|
||||
- fclose(G.outfile);
|
||||
- return;
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
+ return errval ? errval : PK_WARN;
|
||||
}
|
||||
- fclose(G.outfile); /* close "link" file for good... */
|
||||
+ errval = CloseError(G.outfile, G.filename); /* close "link" file for good... */
|
||||
slnk_entry->target[ucsize] = '\0';
|
||||
if (QCOND2)
|
||||
Info(slide, 0, ((char *)slide, "-> %s ",
|
||||
@@ -1188,7 +1220,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
else
|
||||
G.slink_head = slnk_entry;
|
||||
G.slink_last = slnk_entry;
|
||||
- return;
|
||||
+ return errval;
|
||||
}
|
||||
#endif /* SYMLINKS */
|
||||
|
||||
@@ -1201,7 +1233,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
#endif
|
||||
|
||||
#if (defined(NO_FCHOWN))
|
||||
- fclose(G.outfile);
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
#endif
|
||||
|
||||
/* if -X option was specified and we have UID/GID info, restore it */
|
||||
@@ -1227,7 +1259,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
}
|
||||
|
||||
#if (!defined(NO_FCHOWN) && defined(NO_FCHMOD))
|
||||
- fclose(G.outfile);
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
#endif
|
||||
|
||||
#if (!defined(NO_FCHOWN) && !defined(NO_FCHMOD))
|
||||
@@ -1239,7 +1271,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
if (fchmod(fileno(G.outfile), filtattr(__G__ G.pInfo->file_attr)))
|
||||
perror("fchmod (file attributes) error");
|
||||
|
||||
- fclose(G.outfile);
|
||||
+ errval = CloseError(G.outfile, G.filename);
|
||||
#endif /* !NO_FCHOWN && !NO_FCHMOD */
|
||||
|
||||
/* skip restoring time stamps on user's request */
|
||||
@@ -1267,6 +1299,7 @@ void close_outfile(__G) /* GRR: chang
|
||||
#endif
|
||||
#endif /* NO_FCHOWN || NO_FCHMOD */
|
||||
|
||||
+ return errval;
|
||||
} /* end function close_outfile() */
|
||||
|
||||
#endif /* !MTS */
|
||||
diff -up unzip60/unzpriv.h.close unzip60/unzpriv.h
|
||||
--- unzip60/unzpriv.h.close 2009-04-20 01:59:26.000000000 +0200
|
||||
+++ unzip60/unzpriv.h 2009-11-19 08:19:08.610388618 +0100
|
||||
@@ -2604,7 +2604,7 @@ char *GetLoadPath OF((__GPRO));
|
||||
int SetFileSize OF((FILE *file, zusz_t filesize)); /* local */
|
||||
#endif
|
||||
#ifndef MTS /* macro in MTS */
|
||||
- void close_outfile OF((__GPRO)); /* local */
|
||||
+ int close_outfile OF((__GPRO)); /* local */
|
||||
#endif
|
||||
#ifdef SET_SYMLINK_ATTRIBS
|
||||
int set_symlnk_attribs OF((__GPRO__ slinkentry *slnk_entry)); /* local */
|
||||
@@ -0,0 +1,10 @@
|
||||
diff -up unzip60/crc_i386.S.exec-shield unzip60/crc_i386.S
|
||||
--- unzip60/crc_i386.S.exec-shield 2007-01-07 06:02:58.000000000 +0100
|
||||
+++ unzip60/crc_i386.S 2009-11-18 11:16:39.630389312 +0100
|
||||
@@ -302,3 +302,6 @@ _crc32: /* ulg c
|
||||
#endif /* i386 || _i386 || _I386 || __i386 */
|
||||
|
||||
#endif /* !USE_ZLIB && !CRC_TABLE_ONLY */
|
||||
+
|
||||
+.section .note.GNU-stack, "", @progbits
|
||||
+.previous
|
||||
@@ -0,0 +1,62 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>unzip</Name>
|
||||
<Homepage>ftp://ftp.info-zip.org/pub/infozip/UnZip.html</Homepage>
|
||||
<Packager>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>Info-ZIP</License>
|
||||
<IsA>app:console</IsA>
|
||||
<Summary>Unzipper for pkzip-compressed files</Summary>
|
||||
<Description>UnZip enables us to extract archives compressed in .zip format (also called "zipfiles").</Description>
|
||||
<Archive sha1sum="849aae577f4f94ef88c47b127f20265913750921" type="zip">mirrors://sourceforge/infozip/unzip610b.zip</Archive>
|
||||
<Patches>
|
||||
<Patch level="1">unzip-6.0-attribs-overflow.patch</Patch>
|
||||
<Patch level="1">unzip-6.0-exec-shield.patch</Patch>
|
||||
<Patch level="1">unzip-6.0-close.patch</Patch>
|
||||
</Patches>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>unzip</Name>
|
||||
<Files>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="4">
|
||||
<Date>2014-05-11</Date>
|
||||
<Version>610b</Version>
|
||||
<Comment>Release bump.</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2013-10-29</Date>
|
||||
<Version>610b</Version>
|
||||
<Comment>Rebuild</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2013-01-14</Date>
|
||||
<Version>610b</Version>
|
||||
<Comment>New release</Comment>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2010-10-11</Date>
|
||||
<Version>6.0</Version>
|
||||
<Comment>First release</Comment>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>unzip</Name>
|
||||
<Summary xml:lang="tr">pkzip ile sıkıştırılmış dosyalar için açıcı</Summary>
|
||||
<Description xml:lang="tr">UnZip, zip formatında sıkıştırılmış dosyaları açmamızı sağlar.</Description>
|
||||
<Description xml:lang="fr">Unzip nous permet d'extraires des archives compressées aux format .zip (également appelées "fichiers zip").</Description>
|
||||
</Source>
|
||||
</PISI>
|
||||
Reference in New Issue
Block a user