diff --git a/debian_glibc-xattr-types.patch b/debian_glibc-xattr-types.patch deleted file mode 100644 index 01962e2c3840ede03e829cd6eaf970198a3496b1..0000000000000000000000000000000000000000 --- a/debian_glibc-xattr-types.patch +++ /dev/null @@ -1,108 +0,0 @@ -Fix the type of xattr functions to match the glibc headers. - ---- a/libfakeroot.c -+++ b/libfakeroot.c -@@ -1570,7 +1570,7 @@ - #endif /* HAVE_CAPSET */ - - #if defined(HAVE_SETXATTR) || defined(HAVE_LSETXATTR) || defined(HAVE_FSETXATTR) --static size_t common_setxattr(INT_STRUCT_STAT *st, const char *name, void * value, size_t size, int flags) -+static int common_setxattr(INT_STRUCT_STAT *st, const char *name, const void * value, size_t size, int flags) - { - xattr_args xattr; - xattr.name = name; -@@ -1625,7 +1625,7 @@ - #endif /* defined(HAVE_LISTXATTR) || defined(HAVE_LLISTXATTR) || defined(HAVE_FLISTXATTR) */ - - #if defined(HAVE_REMOVEXATTR) || defined(HAVE_LREMOVEXATTR) || defined(HAVE_FREMOVEXATTR) --static size_t common_removexattr(INT_STRUCT_STAT *st, const char *name) -+static int common_removexattr(INT_STRUCT_STAT *st, const char *name) - { - xattr_args xattr; - xattr.name = name; -@@ -1643,7 +1643,7 @@ - #endif /* defined(HAVE_REMOVEXATTR) || defined(HAVE_LREMOVEXATTR) || defined(HAVE_FREMOVEXATTR) */ - - #ifdef HAVE_SETXATTR --ssize_t setxattr(const char *path, const char *name, void *value, size_t size, int flags) -+int setxattr(const char *path, const char *name, const void *value, size_t size, int flags) - { - INT_STRUCT_STAT st; - int r; -@@ -1664,7 +1664,7 @@ - #endif /* HAVE_SETXATTR */ - - #ifdef HAVE_LSETXATTR --ssize_t lsetxattr(const char *path, const char *name, void *value, size_t size, int flags) -+int lsetxattr(const char *path, const char *name, const void *value, size_t size, int flags) - { - INT_STRUCT_STAT st; - int r; -@@ -1685,7 +1685,7 @@ - #endif /* HAVE_LSETXATTR */ - - #ifdef HAVE_FSETXATTR --ssize_t fsetxattr(int fd, const char *name, void *value, size_t size, int flags) -+int fsetxattr(int fd, const char *name, const void *value, size_t size, int flags) - { - INT_STRUCT_STAT st; - int r; -@@ -1832,7 +1832,7 @@ - #endif /* HAVE_FLISTXATTR */ - - #ifdef HAVE_REMOVEXATTR --ssize_t removexattr(const char *path, const char *name) -+int removexattr(const char *path, const char *name) - { - INT_STRUCT_STAT st; - int r; -@@ -1853,7 +1853,7 @@ - #endif /* HAVE_REMOVEXATTR */ - - #ifdef HAVE_LREMOVEXATTR --ssize_t lremovexattr(const char *path, const char *name) -+int lremovexattr(const char *path, const char *name) - { - INT_STRUCT_STAT st; - int r; -@@ -1874,7 +1874,7 @@ - #endif /* HAVE_LREMOVEXATTR */ - - #ifdef HAVE_FREMOVEXATTR --ssize_t fremovexattr(int fd, const char *name) -+int fremovexattr(int fd, const char *name) - { - INT_STRUCT_STAT st; - int r; ---- a/wrapfunc.inp -+++ b/wrapfunc.inp -@@ -168,22 +168,22 @@ - fgetxattr;ssize_t;(int fd, const char *name, void *value, size_t size);(fd, name, value, size) - #endif /* HAVE_FGETXATTR */ - #ifdef HAVE_SETXATTR --setxattr;ssize_t;(const char *path, const char *name, void *value, size_t size, int flags);(path, name, value, size, flags) -+setxattr;int;(const char *path, const char *name, const void *value, size_t size, int flags);(path, name, value, size, flags) - #endif /* HAVE_SETXATTR */ - #ifdef HAVE_LSETXATTR --lsetxattr;ssize_t;(const char *path, const char *name, void *value, size_t size, int flags);(path, name, value, size, flags) -+lsetxattr;int;(const char *path, const char *name, const void *value, size_t size, int flags);(path, name, value, size, flags) - #endif /* HAVE_LSETXATTR */ - #ifdef HAVE_FSETXATTR --fsetxattr;ssize_t;(int fd, const char *name, void *value, size_t size, int flags);(fd, name, value, size, flags) -+fsetxattr;int;(int fd, const char *name, const void *value, size_t size, int flags);(fd, name, value, size, flags) - #endif /* HAVE_FSETXATTR */ - #ifdef HAVE_REMOVEXATTR --removexattr;ssize_t;(const char *path, const char *name);(path, name) -+removexattr;int;(const char *path, const char *name);(path, name) - #endif /* HAVE_REMOVEXATTR */ - #ifdef HAVE_LREMOVEXATTR --lremovexattr;ssize_t;(const char *path, const char *name);(path, name) -+lremovexattr;int;(const char *path, const char *name);(path, name) - #endif /* HAVE_LREMOVEXATTR */ - #ifdef HAVE_FREMOVEXATTR --fremovexattr;ssize_t;(int fd, const char *name);(fd, name) -+fremovexattr;int;(int fd, const char *name);(fd, name) - #endif /* HAVE_FREMOVEXATTR */ - - #ifdef HAVE_FSTATAT - diff --git a/debian_hide-dlsym-error.patch b/debian_hide-dlsym-error.patch deleted file mode 100644 index 3fd34c8778fad5c6bd14b5d9abbbc820eb2780cc..0000000000000000000000000000000000000000 --- a/debian_hide-dlsym-error.patch +++ /dev/null @@ -1,32 +0,0 @@ -Description: Hide error from dlsym() - dlsym(), starting in glibc 2.24 actually reports errors. In our case, - we try to get ACL functions which are not in the glibc. This causes - failures in test suites, so hide those messages for non-debugging - purposes for now. It also makes the build logs annoying to read. -Author: Julian Andres Klode -Origin: vendor -Bug-Debian: https://bugs.debian.org/830912 -Forwarded: no -Last-Update: 2016-08-12 - ---- a/libfakeroot.c -+++ b/libfakeroot.c -@@ -256,10 +256,16 @@ void load_library_symbols(void){ - /* clear dlerror() just in case dlsym() legitimately returns NULL */ - msg = dlerror(); - *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name); -+ - if ( (msg = dlerror()) != NULL){ -- fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); --/* abort ();*/ -+#ifdef LIBFAKEROOT_DEBUGGING -+ if (fakeroot_debug) { -+ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); -+/* abort ();*/ -+ } -+#endif - } -+ - } - } - diff --git a/fakeroot-multilib.patch b/fakeroot-multilib.patch index ba793a3aaaa77afb99f720215182e61ad7ea209e..82dcc79441fa5a938272f1acbe2d0b9ffe8ff109 100644 --- a/fakeroot-multilib.patch +++ b/fakeroot-multilib.patch @@ -1,10 +1,10 @@ -diff -up fakeroot-1.20.2/scripts/fakeroot.in.multilib fakeroot-1.20.2/scripts/fakeroot.in ---- fakeroot-1.20.2/scripts/fakeroot.in.multilib 2014-10-05 17:16:00.000000000 +0200 -+++ fakeroot-1.20.2/scripts/fakeroot.in 2015-09-28 09:56:43.891990046 +0200 +diff -up fakeroot-1.25.2/scripts/fakeroot.in.multilib fakeroot-1.25.2/scripts/fakeroot.in +--- fakeroot-1.25.2/scripts/fakeroot.in.multilib 2020-10-05 21:34:34.584490563 +0200 ++++ fakeroot-1.25.2/scripts/fakeroot.in 2020-10-05 21:35:33.264201406 +0200 @@ -35,7 +35,7 @@ FAKEROOT_BINDIR=@bindir@ USEABSLIBPATH=@LDPRELOADABS@ - LIB=lib@fakeroot_transformed@@DLSUFFIX@ + FAKEROOT_LIB=lib@fakeroot_transformed@@DLSUFFIX@ -PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot +PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib/libfakeroot FAKED=${FAKEROOT_BINDIR}/@faked_transformed@ diff --git a/fakeroot-tests.patch b/fakeroot-tests.patch deleted file mode 100644 index a81be721a085679d234dd81516b3b050892de14d..0000000000000000000000000000000000000000 --- a/fakeroot-tests.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up fakeroot-1.23/test/tartest.tests fakeroot-1.23/test/tartest ---- fakeroot-1.23/test/tartest.tests 2018-07-16 11:23:37.524589359 +0200 -+++ fakeroot-1.23/test/tartest 2018-07-16 11:33:46.051167023 +0200 -@@ -79,7 +79,7 @@ uudecode ${SRCDIR}/tartest.tar.gz.uue - - tar -cf - tar | gzip -9 > faketar.tar.gz - --${SRCDIR}/compare-tar tartest.tar.gz faketar.tar.gz -+${SRCDIR}/compare-tar tartest.tar.gz faketar.tar.gz || : - - #test 2: try to unpack, pack the tar archive, and - # see if the result is the same archive diff --git a/fakeroot-upstream-1.25.2.tar.gz b/fakeroot-upstream-1.25.2.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..d854156e8efad6d9b27aaeb7e117ddf30a7ec039 Binary files /dev/null and b/fakeroot-upstream-1.25.2.tar.gz differ diff --git a/fakeroot.spec b/fakeroot.spec index e716b6a382bed92e956069f3932d7759c30712c2..0ad24e71d428634a9fab36346a5be350aea4e6fe 100644 --- a/fakeroot.spec +++ b/fakeroot.spec @@ -1,140 +1,106 @@ -%bcond_with autoconf - -Name: fakeroot -Version: 1.23 -Release: 2 -Summary: Gives a fake root environment -License: GPLv3+ and LGPLv2+ and (GPL+ or Artistic) -URL: https://tracker.debian.org/pkg/fakeroot -Source0: http://http.debian.net/debian/pool/main/f/fakeroot/%{name}_%{version}.orig.tar.xz - -Patch0000: debian_eglibc-fts-without-LFS.patch -Patch0001: debian_glibc-xattr-types.patch -Patch0002: debian_fix-shell-in-fakeroot.patch -Patch0003: debian_hide-dlsym-error.patch -Patch0004: fakeroot-inttypes.patch -Patch0005: fakeroot-multilib.patch -Patch0006: fakeroot-tests.patch - +%bcond_without autoconf +Summary: Gives a fake root environment +Name: fakeroot +Version: 1.25.2 +Release: 1 +License: GPLv3+ and LGPLv2.1 and MIT and GPL+ +URL: https://tracker.debian.org/pkg/fakeroot +Source0: http://salsa.debian.org/clint/fakeroot/-/archive/upstream/1.25.2/%{name}-upstream-%{version}.tar.gz +Patch0: debian_eglibc-fts-without-LFS.patch +Patch2: debian_fix-shell-in-fakeroot.patch +Patch4: fakeroot-inttypes.patch +Patch5: fakeroot-multilib.patch %if %{with autoconf} -BuildRequires: autoconf automake libtool po4a +BuildRequires: autoconf automake libtool po4a %endif -BuildRequires: util-linux libacl-devel libcap-devel sharutils -Requires: util-linux -Requires(post): chkconfig -Requires(post): coreutils -Requires(preun):chkconfig - -Provides: fakeroot-libs = %{version}-%{release} -Obsoletes: fakeroot-libs < %{version}-%{release} - - +BuildRequires: /usr/bin/getopt libacl-devel libcap-devel sharutils +Requires: /usr/bin/getopt fakeroot-libs = %{version}-%{release} +Requires(post): /usr/sbin/alternatives +Requires(post): /usr/bin/readlink +Requires(preun): /usr/sbin/alternatives %description -fakeroot replaces the invocation of library function to run a command -in a fake environment in which it executes just like has root privileges. -This is implemented by simulating the file manipulation functions such as -chmod and stat. +fakeroot runs a command in an environment wherein it appears to have +root privileges for file manipulation. fakeroot works by replacing the +file manipulation library functions (chmod(2), stat(2) etc.) by ones +that simulate the effect the real library functions would have had, +had the user really been root. -%package help -Summary: Documentation for fakeroot -%description help -Documentation for fakeroot +%package libs +Summary: Gives a fake root environment (libraries) +%description libs +This package contains the libraries required by %{name}. %prep -%autosetup -p1 +%autosetup -p1 -n %{name}-upstream-%{version} %build %if %{with autoconf} -autoreconf -i -cd doc +./bootstrap +pushd doc po4a -k 0 --rm-backups --variable "srcdir=../doc/" po4a/po4a.cfg -cd - +popd %endif - for file in ./doc/{*.1,*/*.1}; do iconv -f latin1 -t utf8 < $file > $file.new && \ mv -f $file.new $file done - for type in sysv tcp; do mkdir obj-$type cd obj-$type cat >> configure << 'EOF' -#!/bin/sh exec ../configure "$@" EOF chmod +x configure -%configure --disable-dependency-tracking --disable-static \ - --libdir=%{_libdir}/libfakeroot --with-ipc=$type --program-suffix=-$type +%configure \ + --disable-dependency-tracking \ + --disable-static \ + --libdir=%{_libdir}/libfakeroot \ + --with-ipc=$type \ + --program-suffix=-$type make cd .. done %install for type in sysv tcp; do - %make_install -C obj-$type libdir=%{_libdir}/libfakeroot - mv %{buildroot}%{_libdir}/libfakeroot/libfakeroot-{0,$type}.so - rm -f %{buildroot}%{_libdir}/libfakeroot/libfakeroot.so - %delete_la - %find_lang faked-$type --without-mo --with-man - %find_lang fakeroot-$type --without-mo --with-man + make -C obj-$type install libdir=%{_libdir}/libfakeroot DESTDIR=%{buildroot} + mv %{buildroot}%{_libdir}/libfakeroot/libfakeroot-0.so \ + %{buildroot}%{_libdir}/libfakeroot/libfakeroot-$type.so + rm -f %{buildroot}%{_libdir}/libfakeroot/libfakeroot.so + rm -f %{buildroot}%{_libdir}/libfakeroot/libfakeroot.*la + %find_lang faked-$type --without-mo --with-man + %find_lang fakeroot-$type --without-mo --with-man done - -cat fake{d,root}-{sysv,tcp}.lang > fakeroot.lang +rm %{buildroot}%{_mandir}{,/*}/man1/fake{d,root}-sysv.1 +rename -- -tcp '' %{buildroot}%{_mandir}{,/*}/man1/fake{d,root}-tcp.1 +sed -e 's/-tcp//g' fake{d,root}-tcp.lang > fakeroot.lang %check -make -C obj-sysv check VERBOSE=1 -make -C obj-tcp check VERBOSE=1 - -%post - -for name in fakeroot faked; do - link=$(readlink -e "/usr/bin/$name") - if [ "$link" = "/usr/bin/$name" ]; then - rm -f /usr/bin/$name - fi +for type in sysv tcp; do + make -C obj-$type check VERBOSE=1 done +%post +link=$(readlink -e "/usr/bin/fakeroot") +if [ "$link" = "/usr/bin/fakeroot" ]; then + rm -f /usr/bin/fakeroot +fi +link=$(readlink -e "%{_bindir}/faked") +if [ "$link" = "%{_bindir}/faked" ]; then + rm -f "%{_bindir}/faked" +fi link=$(readlink -e "%{_libdir}/libfakeroot/libfakeroot-0.so") if [ "$link" = "%{_libdir}/libfakeroot/libfakeroot-0.so" ]; then rm -f "%{_libdir}/libfakeroot/libfakeroot-0.so" fi - -for type in tcp sysv; do - if [ "$type" = "tcp" ]; then - priority=50 - else - priority=40 - fi - /usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot "%{_bindir}/fakeroot-$type" $priority \ - --slave %{_bindir}/faked faked %{_bindir}/faked-$type \ - --slave %{_libdir}/libfakeroot/libfakeroot-0.so libfakeroot.so %{_libdir}/libfakeroot/libfakeroot-$type.so -done - -%post help - -for type in tcp sysv; do - if [ "$type" = "tcp" ]; then - priority=50 - else - priority=40 - fi - /usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot "%{_bindir}/fakeroot-$type" $priority \ - --slave %{_mandir}/man1/fakeroot.1.gz fakeroot.1.gz %{_mandir}/man1/fakeroot-$type.1.gz \ - --slave %{_mandir}/man1/faked.1.gz faked.1.gz %{_mandir}/man1/faked-$type.1.gz -done - -for lang in de es fr nl pt sv; do - /usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot "%{_bindir}/fakeroot-tcp" 50 \ - --slave %{_mandir}/$lang/man1/fakeroot.1.gz fakeroot.$lang.1.gz %{_mandir}/$lang/man1/fakeroot-tcp.1.gz \ - --slave %{_mandir}/$lang/man1/faked.1.gz faked.$lang.1.gz %{_mandir}/$lang/man1/faked-tcp.1.gz -done - -for lang in de es fr nl pt sv; do - /usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot "%{_bindir}/fakeroot-sysv" 40 \ - --slave %{_mandir}/$lang/man1/fakeroot.1.gz fakeroot.$lang.1.gz %{_mandir}/$lang/man1/fakeroot-sysv.1.gz \ - --slave %{_mandir}/$lang/man1/faked.1.gz faked.$lang.1.gz %{_mandir}/$lang/man1/faked-sysv.1.gz -done +/usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot \ + "%{_bindir}/fakeroot-tcp" 50 \ + --slave %{_bindir}/faked faked %{_bindir}/faked-tcp \ + --slave %{_libdir}/libfakeroot/libfakeroot-0.so libfakeroot.so %{_libdir}/libfakeroot/libfakeroot-tcp.so +/usr/sbin/alternatives --install "%{_bindir}/fakeroot" fakeroot \ + "%{_bindir}/fakeroot-sysv" 40 \ + --slave %{_bindir}/faked faked %{_bindir}/faked-sysv \ + --slave %{_libdir}/libfakeroot/libfakeroot-0.so libfakeroot.so %{_libdir}/libfakeroot/libfakeroot-sysv.so \ %preun if [ $1 = 0 ]; then @@ -142,36 +108,28 @@ if [ $1 = 0 ]; then /usr/sbin/alternatives --remove fakeroot "%{_bindir}/fakeroot-sysv" fi -%files +%files -f %{name}.lang %defattr(-,root,root,-) -%doc COPYING AUTHORS BUGS DEBUG +%doc COPYING AUTHORS BUGS DEBUG doc/README.saving %{_bindir}/faked-* %ghost %{_bindir}/faked %{_bindir}/fakeroot-* %ghost %{_bindir}/fakeroot +%{_mandir}/man1/faked.1* +%{_mandir}/man1/fakeroot.1* + +%files libs %dir %{_libdir}/libfakeroot -%{_libdir}/libfakeroot/libfakeroot-*.so +%{_libdir}/libfakeroot/libfakeroot-sysv.so +%{_libdir}/libfakeroot/libfakeroot-tcp.so %ghost %{_libdir}/libfakeroot/libfakeroot-0.so -%files help -%doc doc/README.saving -%{_mandir}/man1/* -%{_mandir}/*/man1/* -%ghost %{_mandir}/man1/faked.1.gz -%ghost %{_mandir}/man1/fakeroot.1.gz -%ghost %lang(de) %{_mandir}/de/man1/faked.1.gz -%ghost %lang(de) %{_mandir}/de/man1/fakeroot.1.gz -%ghost %lang(es) %{_mandir}/es/man1/faked.1.gz -%ghost %lang(es) %{_mandir}/es/man1/fakeroot.1.gz -%ghost %lang(fr) %{_mandir}/fr/man1/faked.1.gz -%ghost %lang(fr) %{_mandir}/fr/man1/fakeroot.1.gz -%ghost %lang(pt) %{_mandir}/pt/man1/faked.1.gz -%ghost %lang(pt) %{_mandir}/pt/man1/fakeroot.1.gz -%ghost %lang(sv) %{_mandir}/sv/man1/faked.1.gz -%ghost %lang(sv) %{_mandir}/sv/man1/fakeroot.1.gz -%ghost %lang(nl) %{_mandir}/nl/man1/faked.1.gz -%ghost %lang(nl) %{_mandir}/nl/man1/fakeroot.1.gz - %changelog +* Fri Nov 20 2020 zhangjiapeng - 1.25.2-1 +- Update to 1.25.2 + +* Wed Aug 12 2020 zhangjiapeng - 1.23-3 +- remove four test cases to solve the compilation failure + * Fri Nov 29 2019 lihao - 1.23-2 - Package Init diff --git a/fakeroot.yaml b/fakeroot.yaml new file mode 100644 index 0000000000000000000000000000000000000000..15e1ddd94402db068f21cdced9858af09ae7a4b0 --- /dev/null +++ b/fakeroot.yaml @@ -0,0 +1,4 @@ +version_control: git +src_repo: https://salsa.debian.org/clint/fakeroot.git +tag_prefix: ^debian/ +seperator: . diff --git a/fakeroot_1.23.orig.tar.xz b/fakeroot_1.23.orig.tar.xz deleted file mode 100644 index 8ea2603a185cdb6e684e5135841eadfb5d21cdff..0000000000000000000000000000000000000000 Binary files a/fakeroot_1.23.orig.tar.xz and /dev/null differ