public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-arch/zip/files/, app-arch/zip/
@ 2022-09-10  2:16 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2022-09-10  2:16 UTC (permalink / raw
  To: gentoo-commits

commit:     e20ac65e339e8fe52f62aa43b98a60ffd4dc16ed
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 10 02:15:40 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 10 02:15:53 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e20ac65e

app-arch/zip: fix build w/ Clang 15

Closes: https://bugs.gentoo.org/869203
Thanks-to: Nicholas Vinson <nvinson234 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/zip-3.0-clang-15-configure-tests.patch   | 52 ++++++++++++++++
 app-arch/zip/zip-3.0-r5.ebuild                     | 71 ++++++++++++++++++++++
 2 files changed, 123 insertions(+)

diff --git a/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
new file mode 100644
index 000000000000..89a059a053c3
--- /dev/null
+++ b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
@@ -0,0 +1,52 @@
+https://bugs.gentoo.org/869203
+
+--- a/unix/configure
++++ b/unix/configure
+@@ -507,18 +507,18 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/
+ # add NO_'function_name' to flags if missing
+ 
+ for func in rmdir strchr strrchr rename mktemp mktime mkstemp
+ do
+   echo Check for $func
+-  echo "int main(){ $func(); return 0; }" > conftest.c
++  echo "char $func(); int main(){ return $func(); }" > conftest.c
+   $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null
+   [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`"
+ done
+ 
+ 
+ echo Check for memset
+-echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c
++echo "int main(){ char memset(); return memset(); }" > conftest.c
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM"
+ 
+ 
+ echo Check for memmove
+@@ -551,11 +551,11 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_ERRNO"
+ 
+ 
+ echo Check for directory libraries
+ cat > conftest.c << _EOF_
+-int main() { return closedir(opendir(".")); }
++int main() { char closedir(); char opendir(); return closedir(opendir()); }
+ _EOF_
+ 
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ if [ $? -ne 0 ]; then
+   OPT=""
+@@ -573,11 +573,11 @@ fi
+ 
+ 
+ # Dynix/ptx 1.3 needed this
+ 
+ echo Check for readlink
+-echo "int main(){ return readlink(); }" > conftest.c
++echo "int main(){ char readlink(); return readlink(); }" > conftest.c
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ if [ $? -ne 0 ]; then
+   $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null
+   [ $? -eq 0 ] && LFLAGS2="${LFLAGS2} -lseq"
+ fi
+

diff --git a/app-arch/zip/zip-3.0-r5.ebuild b/app-arch/zip/zip-3.0-r5.ebuild
new file mode 100644
index 000000000000..09244c8b2bb6
--- /dev/null
+++ b/app-arch/zip/zip-3.0-r5.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs flag-o-matic
+
+MY_P="${PN}${PV//.}"
+DESCRIPTION="Info ZIP (encryption support)"
+HOMEPAGE="http://www.info-zip.org/"
+SRC_URI="mirror://sourceforge/infozip/${MY_P}.zip"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="Info-ZIP"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux"
+IUSE="bzip2 crypt natspec unicode"
+
+DEPEND="${RDEPEND}"
+RDEPEND="bzip2? ( app-arch/bzip2 )
+	natspec? ( dev-libs/libnatspec )"
+BDEPEND="app-arch/unzip"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-no-crypt.patch # bug #238398
+	"${FILESDIR}"/${P}-pic.patch
+	"${FILESDIR}"/${P}-exec-stack.patch # bug #122849
+	"${FILESDIR}"/${P}-build.patch # bug #200995
+	"${FILESDIR}"/${P}-zipnote-freeze.patch # bug #322047
+	"${FILESDIR}"/${P}-format-security.patch # bug #512414
+	"${FILESDIR}"/${P}-clang-15-configure-tests.patch
+)
+
+src_prepare() {
+	# bug #275244
+	use natspec && PATCHES+=( "${FILESDIR}"/${PN}-3.0-natspec.patch )
+	default
+}
+
+src_configure() {
+	append-cppflags \
+		-DLARGE_FILE_SUPPORT \
+		-DUIDGID_NOT_16BIT \
+		-D$(usev !bzip2 'NO')BZIP2_SUPPORT \
+		-D$(usev !crypt 'NO')CRYPT \
+		-D$(usev !unicode 'NO')UNICODE_SUPPORT
+
+	# - We use 'sh' because: 1. lacks +x bit, easier; 2. it tries to load bashdb
+	# - Third arg disables bzip2 logic as we handle it ourselves above.
+	edo sh ./unix/configure "$(tc-getCC)" "-I. -DUNIX ${CFLAGS} ${CPPFLAGS}" "${T}"
+
+	if use bzip2 ; then
+		sed -i -e "s:LFLAGS2=:&'-lbz2 ':" flags || die
+	fi
+}
+
+src_compile() {
+	emake \
+		CPP="$(tc-getCPP)" \
+		-f unix/Makefile generic
+}
+
+src_install() {
+	dobin zip zipnote zipsplit
+	doman man/zip{,note,split}.1
+	if use crypt ; then
+		dobin zipcloak
+		doman man/zipcloak.1
+	fi
+	dodoc BUGS CHANGES README* TODO WHATSNEW WHERE proginfo/*.txt
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-arch/zip/files/, app-arch/zip/
@ 2022-11-19  1:35 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2022-11-19  1:35 UTC (permalink / raw
  To: gentoo-commits

commit:     e6b9dfb87bb0e636b46ff40111252f96196375e7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 19 00:35:47 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 19 01:34:42 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6b9dfb8

app-arch/zip: further Clang 16 fixes (just in case)

I only started looking at this because I saw a clang.diff from toralf
which indicated more problems, but it turned out to be for zip-3.0-r4, not
-r5/-r6 which had fixes [0][1][2].

-r6 is actually clean wrt clang.diff from the /etc/portage/bashrc hook
we're using, but I noticed these additional nits while checking over
configure, so may as well apply these just to be safe.

[0] 5d06aa4c9b99bd1bcbbd8cedeb0a3ca54335905b
[1] 4757f8e333a6b23956d6e9a53bac21365e70cc4f
[2] e20ac65e339e8fe52f62aa43b98a60ffd4dc16ed

Bug: https://bugs.gentoo.org/869203
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/zip-3.0-clang-15-configure-tests.patch   | 202 +++++++++++++++++++--
 .../zip/{zip-3.0-r6.ebuild => zip-3.0-r7.ebuild}   |   0
 2 files changed, 184 insertions(+), 18 deletions(-)

diff --git a/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
index a32e1cee9bc0..f776fb3ac04f 100644
--- a/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
+++ b/app-arch/zip/files/zip-3.0-clang-15-configure-tests.patch
@@ -3,14 +3,140 @@ https://bugs.gentoo.org/869203
 See also OE's variant: https://cgit.openembedded.org/openembedded-core/commit/?id=f898db2607ba3837f81292af92bc8cb605b96cb3
 --- a/unix/configure
 +++ b/unix/configure
-@@ -507,18 +507,18 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/
- # add NO_'function_name' to flags if missing
+@@ -32,7 +32,7 @@ CFLAGS_BZ=''
+ echo 'Check C compiler type (optimization options)'
+ # Sun C?
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __SUNPRO_C
+    bad code
+@@ -47,7 +47,7 @@ if test $? -eq 0; then
+ else
+   # Tru64 DEC/Compaq/HP C?
+   cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __DECC
+    bad code
+@@ -62,7 +62,7 @@ _EOF_
+   else
+     # HP-UX HP C?
+     cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifdef __GNUC__
+    bad code
+@@ -88,7 +88,7 @@ _EOF_
+     else
+       # GNU C?
+       cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __GNUC__
+    bad code
+@@ -197,7 +197,7 @@ else
+       echo "  Check if OS already has bzip2 library installed"
+       cat > conftest.c << _EOF_
+ #include "bzlib.h"
+-int main()
++int main(void)
+ {
+   bz_stream strm;
+   BZ2_bzCompressEnd(&strm);
+@@ -260,7 +260,7 @@ rm -f _match.s _match.o _crc_i386.s _crc_i386.o
  
+ echo Check for ANSI options
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #ifndef __STDC__
+    forget it
+@@ -288,7 +288,7 @@ $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+ echo Check the handling of const
+ cat > conftest.c << _EOF_
+ typedef int charset[2];
+-int main()
++int main(void)
+ {
+   const charset x;
+   const char *foo;
+@@ -303,7 +303,7 @@ echo Check for time_t
+ cat > conftest.c << _EOF_
+ #include <sys/types.h>
+ #include <time.h>
+-int main()
++int main(void)
+ {
+   time_t t;
+   return 0;
+@@ -315,8 +315,9 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+ 
+ echo Check for size_t
+ cat > conftest.c << _EOF_
++#include <stddef.h>
+ #include <sys/types.h>
+-int main()
++int main(void)
+ {
+   size_t s;
+   return 0;
+@@ -329,7 +330,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+ echo Check for off_t
+ cat > conftest.c << _EOF_
+ #include <sys/types.h>
+-int main()
++int main(void)
+ {
+   off_t s;
+   return 0;
+@@ -353,7 +354,7 @@ cat > conftest.c << _EOF_
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+   struct stat s;
+ 
+@@ -409,7 +410,7 @@ cat > conftest.c << _EOF_
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+   off_t offset;
+   struct stat s;
+@@ -453,7 +454,7 @@ echo Check for wide char support
+ cat > conftest.c << _EOF_
+ #include <stdlib.h>
+ #include <stdio.h>
+-int main()
++int main(void)
+ {
+   int wsize;
+   wchar_t *wide_string;
+@@ -489,7 +490,7 @@ fi
+ echo Check for gcc no-builtin flag
+ # -fno-builtin since version 2
+ cat > conftest.c << _EOF_
+-int main()
++int main(void)
+ {
+ #if __GNUC__ >= 2
+    return 0;
+@@ -508,14 +509,14 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
  for func in rmdir strchr strrchr rename mktemp mktime mkstemp
  do
    echo Check for $func
 -  echo "int main(){ $func(); return 0; }" > conftest.c
-+  echo "char $func(); int main(){ return $func(); }" > conftest.c
++  echo "char $func(); int main(void){ return $func(); }" > conftest.c
    $CC $BFLAG -o conftest conftest.c >/dev/null 2>/dev/null
    [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_`echo $func | tr '[a-z]' '[A-Z]'`"
  done
@@ -18,36 +144,76 @@ See also OE's variant: https://cgit.openembedded.org/openembedded-core/commit/?i
  
  echo Check for memset
 -echo "int main(){ char k; memset(&k,0,0); return 0; }" > conftest.c
-+echo "int main(){ char memset(); return memset(); }" > conftest.c
++echo "int main(void){ char memset(); return memset(); }" > conftest.c
  $CC -o conftest conftest.c >/dev/null 2>/dev/null
  [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DZMEM"
  
- 
+@@ -523,7 +524,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
  echo Check for memmove
-@@ -551,11 +551,11 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/
- [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_ERRNO"
- 
+ cat > conftest.c << _EOF_
+ #include <string.h>
+-int main() { int a; int b = 0; memmove( &a, &b, sizeof( a)); return a; }
++int main(void) { int a; int b = 0; memmove( &a, &b, sizeof( a)); return a; }
+ _EOF_
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_MEMMOVE"
+@@ -532,7 +533,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ echo Check for strerror
+ cat > conftest.c << _EOF_
+ #include <string.h>
+-int main() { strerror( 0); return 0; }
++int main(void) { strerror(0); return 0; }
+ _EOF_
+ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNEED_STRERROR"
+@@ -540,7 +541,7 @@ $CC -o conftest conftest.c >/dev/null 2>/dev/null
+ echo Check for errno declaration
+ cat > conftest.c << _EOF_
+ #include <errno.h>
+-main()
++int main(void)
+ {
+   errno = 0;
+   return 0;
+@@ -552,7 +553,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
  
  echo Check for directory libraries
  cat > conftest.c << _EOF_
 -int main() { return closedir(opendir(".")); }
-+int main() { char closedir(); char opendir(); return closedir(opendir()); }
++int main(void) { char closedir(); char opendir(); return closedir(opendir()); }
  _EOF_
  
  $CC -o conftest conftest.c >/dev/null 2>/dev/null
- if [ $? -ne 0 ]; then
-   OPT=""
-@@ -573,11 +573,11 @@ fi
- 
- 
+@@ -574,7 +575,7 @@ fi
  # Dynix/ptx 1.3 needed this
  
  echo Check for readlink
 -echo "int main(){ return readlink(); }" > conftest.c
-+echo "int main(){ char readlink(); return readlink(); }" > conftest.c
++echo "int main(void){ char readlink(); return readlink(); }" > conftest.c
  $CC -o conftest conftest.c >/dev/null 2>/dev/null
  if [ $? -ne 0 ]; then
    $CC -o conftest conftest.c -lseq >/dev/null 2>/dev/null
-   [ $? -eq 0 ] && LFLAGS2="${LFLAGS2} -lseq"
- fi
-
+@@ -617,7 +618,7 @@ CFLAGS="${CFLAGS} ${OPT}"
+ 
+ echo Check for valloc
+ cat > conftest.c << _EOF_
+-main()
++int main(void)
+ {
+ #ifdef MMAP
+     valloc();
+@@ -652,12 +653,12 @@ elif [ -f /xenix ]; then
+   fi
+ elif uname -X >/dev/null 2>/dev/null; then
+ # SCO shared library check
+-  echo "int main() { return 0;}" > conftest.c
++  echo "int main(void) { return 0;}" > conftest.c
+   $CC -o conftest conftest.c -lc_s -nointl >/dev/null 2> /dev/null
+   [ $? -eq 0 ] && LFLAGS2="-lc_s -nointl"
+ else
+   SYSTEM=`uname -s 2>/dev/null` || SYSTEM="unknown"
+-  echo "int main() { return 0;}" > conftest.c
++  echo "int main(void) { return 0;}" > conftest.c
+   case $SYSTEM in
+      OSF1|ULTRIX)
+         echo Check for -Olimit option

diff --git a/app-arch/zip/zip-3.0-r6.ebuild b/app-arch/zip/zip-3.0-r7.ebuild
similarity index 100%
rename from app-arch/zip/zip-3.0-r6.ebuild
rename to app-arch/zip/zip-3.0-r7.ebuild


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-11-19  1:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-19  1:35 [gentoo-commits] repo/gentoo:master commit in: app-arch/zip/files/, app-arch/zip/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2022-09-10  2:16 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox