From 4c92821390f5aa443f764b98c16f762f6cf717d3174022fd6dcaa9fdc5d0f3fd Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Mon, 5 Aug 2013 18:46:42 +0000 Subject: [PATCH] Accepting request 185879 from security Update to 0~20130416 major specfile reorganization to match libyal template part of summer 2013 libyal refresh for opensuse 13.1 OBS-URL: https://build.opensuse.org/request/show/185879 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libewf?expand=0&rev=7 --- Expert_Witness_Compression_Format_(EWF).pdf | 3 + ...rt_Witness_Compression_Format_2_(EWF2).pdf | 3 + libewf-20130128.tar.gz | 3 - libewf-20130416.tar.gz | 3 + libewf.changes | 29 +++ libewf.spec | 205 +++++++++++------- remove_date_time_macros.patch | 10 + 7 files changed, 177 insertions(+), 79 deletions(-) create mode 100644 Expert_Witness_Compression_Format_(EWF).pdf create mode 100644 Expert_Witness_Compression_Format_2_(EWF2).pdf delete mode 100644 libewf-20130128.tar.gz create mode 100644 libewf-20130416.tar.gz diff --git a/Expert_Witness_Compression_Format_(EWF).pdf b/Expert_Witness_Compression_Format_(EWF).pdf new file mode 100644 index 0000000..3ff110e --- /dev/null +++ b/Expert_Witness_Compression_Format_(EWF).pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21e61013dbd2af3ea8468e3e0deec2771090d06fd0c24720107550e9c56a206a +size 332072 diff --git a/Expert_Witness_Compression_Format_2_(EWF2).pdf b/Expert_Witness_Compression_Format_2_(EWF2).pdf new file mode 100644 index 0000000..39b38c6 --- /dev/null +++ b/Expert_Witness_Compression_Format_2_(EWF2).pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:040f2f94e8337661d98ad935c9a96e29a2c28d0f3ac20384f9505a24ef718f15 +size 221940 diff --git a/libewf-20130128.tar.gz b/libewf-20130128.tar.gz deleted file mode 100644 index 0e73828..0000000 --- a/libewf-20130128.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:769a5662299485f98d50ef484e73da23813827ac52a2963b67a3e3416fd663d5 -size 1978794 diff --git a/libewf-20130416.tar.gz b/libewf-20130416.tar.gz new file mode 100644 index 0000000..c692e9a --- /dev/null +++ b/libewf-20130416.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0f14071665b24a8077a24f4cafbf092ad5ac1859f49994dc4e843e747ba7a89 +size 1968288 diff --git a/libewf.changes b/libewf.changes index 2b3d4e1..6216e5d 100644 --- a/libewf.changes +++ b/libewf.changes @@ -1,3 +1,32 @@ +------------------------------------------------------------------- +Wed Jul 31 19:16:41 UTC 2013 - Greg.Freemyer@gmail.com + +- update to 0~20130416 + * changes to zlib.m4 for adler32 detection +- add Obsoletes/Provides pair for ewftools. That was the old name of the tool package. + +------------------------------------------------------------------- +Fri Apr 5 21:23:39 UTC 2013 - jengelh@inai.de + +- Cleanups: Set RPM group, license, summary and description + metadata; remove unused %py_requires; do not bloat shlib package + with documentation +- Use system libraries instead of bundled ones where possible +- Name the tools package according to upstream's recommendation +- Drop unnecessary -fno-strict-aliasing + +------------------------------------------------------------------- +Wed Apr 3 17:26:26 UTC 2013 - Greg.Freemyer@gmail.com + +- update to latest release 20130331 + * more sync with experimental version + * improved error tolerance for issue 8 + * updated libsmdev to fix issue 13 +- add 2 documentation files provided by upstream +- fix a illegal group setting +- update %files sections to match sample specfile in source tree +- update Requires and BuildRequires to match sample specfile in source tree + ------------------------------------------------------------------- Fri Mar 8 23:08:41 UTC 2013 - Greg.Freemyer@gmail.com diff --git a/libewf.spec b/libewf.spec index 1fe1520..cdacf8c 100644 --- a/libewf.spec +++ b/libewf.spec @@ -16,134 +16,187 @@ # -# -%define soname 2 -%define timestamp 20130128 - Name: libewf -Version: 0.0.0+%{timestamp} +%define lname libewf2 +%define timestamp 20130416 +Version: 0~%timestamp Release: 0 Summary: Library for the Expert Witness Compression Format (EWF) -License: LGPL-3.0+ -Group: System/Libraries +License: LGPL-3.0+ and GFDL-1.3+ +Group: Productivity/File utilities Url: http://code.google.com/p/libewf/ -Source0: http://libewf.googlecode.com/files/libewf-20130128.tar.gz -Source1: http://sourceforge.net/projects/libewf/files/mount_ewf/mount_ewf-20090113/mount_ewf-20090113.py -# PATCH-FIX-OPENSUSE remove_date_time_macros.patch Greg.Freemyer@gmail.com -- rpmlint complains about the macros -Patch0: remove_date_time_macros.patch -BuildRequires: e2fsprogs-devel + +#DL-URL: https://googledrive.com/host/0B3fBvzttpiiSMTdoaVExWWNsRjg/libewf-%{timestamp}.tar.gz +Source: %name-%timestamp.tar.gz +Source2: http://downloads.sf.net/libewf/mount_ewf-20090113.py +Source3: Expert_Witness_Compression_Format_(EWF).pdf +Source4: Expert_Witness_Compression_Format_2_(EWF2).pdf + +Patch1: remove_date_time_macros.patch +BuildRequires: bison +BuildRequires: flex # Needed for language translation support BuildRequires: gettext -BuildRequires: libuuid-devel -BuildRequires: openssl-devel BuildRequires: pkg-config -#Needed for mount.ewf(.py) support -BuildRequires: fuse-devel BuildRequires: python-devel -BuildRequires: zlib-devel -Requires: zlib -Recommends: fuse +BuildRequires: xz +BuildRequires: pkgconfig(bzip2) >= 1.0 +BuildRequires: pkgconfig(fuse) >= 2.6 +BuildRequires: pkgconfig(libcaes) >= 20120425 +#use the factory versions of these if building for factory +%if 0%{?suse_version} > 1230 +BuildRequires: pkgconfig(libcnotify) >= 20120425 +BuildRequires: pkgconfig(libcpath) >= 20120701 +BuildRequires: pkgconfig(libcsplit) >= 20120701 +# these are in filesystems, but not yet in factory so use the internal version +#BuildRequires: pkgconfig(libodraw) >= 20120630 +#BuildRequires: pkgconfig(libsmdev) >= 20120630 +%endif +BuildRequires: pkgconfig(openssl) >= 1.0.0 +BuildRequires: pkgconfig(uuid) >= 2.20 +BuildRequires: pkgconfig(zlib) >= 1.2.5 +# build fails if libyal factory package is used +# verified 7/31/2013 +#BuildRequires: pkgconfig(libsmraw) >= 20120630 +#BuildRequires: pkgconfig(libhmac) >= 20120425 +#BuildRequires: pkgconfig(libclocale) >= 20120425 +#BuildRequires: pkgconfig(libcerror) >= 20120425 +#BuildRequires: pkgconfig(libbfio) >= 20120426 +#BuildRequires: pkgconfig(libcdata) >= 20120425 +#BuildRequires: pkgconfig(libcfile) >= 20120526 +#BuildRequires: pkgconfig(libuna) >= 20120425 +# these packages not yet released by upstream +#BuildRequires: pkgconfig(libcstring) >= 20120425 +#BuildRequires: pkgconfig(libcsystem) >= 20120425 +#BuildRequires: pkgconfig(libfcache) >= 20120405 +#BuildRequires: pkgconfig(libfvalue) >= 20120428 +#BuildRequires: pkgconfig(libmfdata) >= 20120425 BuildRoot: %{_tmppath}/%{name}-%{version}-build -%py_requires %description -Libewf is a library for support of the Expert Witness Compression Format (EWF), -it support both the SMART format (EWF-S01) and the EnCase format (EWF-E01). -Libewf allows you to read and write media information within the EWF files. +libewf is a library for support of the Expert Witness Compression +Format (EWF). It supports both the SMART format (EWF-S01) and the +EnCase format (EWF-E01). libewf allows you to read and write media +information within the EWF files. libewf allows to read files created +by EnCase 1 to 6, linen and FTK Imager. -%package -n libewf%{soname} +%package -n %lname Summary: Library to support the Expert Witness Compression Format +License: LGPL-3.0+ Group: System/Libraries -%description -n libewf%{soname} -libewf is a library for support of the Expert Witness Compression Format (EWF). -libewf allows you to read media information of EWF files in the SMART (EWF-S01) -format and the EnCase (EWF-E01) format. libewf allows to read files created by -EnCase 1 to 6, linen and FTK Imager. +%description -n %lname +libewf is a library for support of the Expert Witness Compression +Format (EWF). It supports both the SMART format (EWF-S01) and the +EnCase format (EWF-E01). libewf allows you to read and write media +information within the EWF files. libewf allows to read files created +by EnCase 1 to 6, linen and FTK Imager. -%package -n ewftools +%package tools Summary: Utilities for the Expert Witness Compression Format (EWF) +License: LGPL-3.0+ Group: System/Filesystems +Requires: fuse Requires: python-fuse >= 0.2 +#Don't use obsoletes because new 0~yyyymmdd version is less than old 0.0.0+yyyymmdd version +#zypper dup should "downgrade" ewftools to ewftools in factory regardless, so this should work +#Obsoletes: ewftools <= 0.0.0+20130128 +Provides: ewftools = %{version} -%description -n ewftools +%description tools Several tools for reading and writing EWF files. It contains tools to acquire, verify and export EWF files. -%package devel -Summary: Development files for %{name} +%package devel +Summary: Development files for libewf, an Expert Witness Compression Format library +License: LGPL-3.0+ and GFDL-1.3+ Group: Development/Libraries/C and C++ -Requires: %{name}%{soname} = %{version} -Requires: pkg-config +Requires: %lname = %version -%description devel -The %{name}-devel package contains libraries and header files for -developing applications that use %{name}. +%description devel +libewf is a library for support of the Expert Witness Compression +Format (EWF). It supports both the SMART format (EWF-S01) and the +EnCase format (EWF-E01). libewf allows you to read and write media +information within the EWF files. libewf allows to read files created +by EnCase 1 to 6, linen and FTK Imager. -%package -n python-%{name} -Summary: Python binding for libewf -Group: System Environment/Libraries -#BuildRequires: python-devel -Requires: libewf%{soname} = %{version} +This subpackage contains libraries and header files for developing +applications that want to make use of %name. + +%package -n python-%name +Summary: Python bindings for libewf, an Expert Witness Compression format library +License: LGPL-3.0+ +Group: Development/Libraries/Python Requires: python -%description -n python-%{name} -Python binding for libewf. libewf can create and read EnCase forensic images. +%description -n python-%name +Python binding for libewf, which can create and read EnCase forensic +images. %prep -%setup -q -n libewf-%{timestamp} -%patch0 -p1 +%setup -qn libewf-%timestamp +%patch -P 1 -p1 +cp "%SOURCE3" "%SOURCE4" . %build -export CFLAGS="%{optflags} -fno-strict-aliasing" -export CXXFLAGS="%{optflags}" +#export CFLAGS="%optflags -fno-strict-aliasing" +#export CXXFLAGS="%optflags" %configure --disable-static \ --enable-wide-character-type \ --enable-python #Remove rpath from libtool -sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool -sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool +#sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool +#sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool # clean unused-direct-shlib-dependencies -sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool +#sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool make %{?_smp_mflags} %install -# maintain SLES compatibility make install DESTDIR="%buildroot" -find %{buildroot} -name '*.la' -exec rm -f {} ';' +find "%buildroot" -name "*.la" -delete -install -D -pm 0755 %{SOURCE1} %{buildroot}/sbin/mount.ewf -ln -s mount.ewf %{buildroot}/sbin/umount.ewf +install -Dpm0755 "%SOURCE2" "%buildroot/sbin/mount.ewf" +ln -s mount.ewf "%buildroot/sbin/umount.ewf" -%post -n libewf%{soname} -p /sbin/ldconfig +%post -n %lname -p /sbin/ldconfig +%postun -n %lname -p /sbin/ldconfig -%postun -n libewf%{soname} -p /sbin/ldconfig +%files -n %lname +%defattr(-,root,root) +%doc AUTHORS COPYING NEWS ChangeLog +%_libdir/libewf.so.* -%files -n libewf%{soname} -%defattr(-,root,root,-) -%doc AUTHORS COPYING NEWS ChangeLog ABOUT-NLS -%{_libdir}/*.so.* +%files tools +%defattr(-,root,root) +%_bindir/ewfacquire +%_bindir/ewfacquirestream +%_bindir/ewfexport +%_bindir/ewfinfo +%_bindir/ewfmount +%_bindir/ewfrecover +%_bindir/ewfverify +### experimental file ### +%_bindir/ewfdebug -%files -n ewftools -%defattr(-,root,root,-) -%{_bindir}/ewf* -%{_mandir}/man1/*.gz -/sbin/*.ewf +%_mandir/man1/ewf*.1* +/sbin/*mount.ewf %files devel -%defattr(-,root,root,-) -%{_includedir}/libewf.h -%{_includedir}/libewf/ -%{_libdir}/*.so -%{_libdir}/pkgconfig/libewf.pc -%{_mandir}/man3/*.gz +%defattr(-,root,root) +%doc AUTHORS ChangeLog COPYING NEWS README README.dll +%doc *.pdf +%_includedir/libewf.h +%_includedir/libewf/ +%_libdir/libewf.so +%_libdir/pkgconfig/libewf.pc +%_mandir/man3/libewf.3* -%files -n python-%{name} -%defattr(644,root,root,755) +%files -n python-%name +%defattr(-,root,root) %doc AUTHORS COPYING NEWS README -%{python_sitearch}/*.so +%python_sitearch/pyewf.so %changelog diff --git a/remove_date_time_macros.patch b/remove_date_time_macros.patch index 98fab84..9c3ee94 100644 --- a/remove_date_time_macros.patch +++ b/remove_date_time_macros.patch @@ -1,3 +1,13 @@ +From: +Upstream: openSUSE-specific, but merging is nevertheless welcome + +src: kill __DATE__ and __TIME__ + +These macros are undesired on at least OBS (and rpmlint subsequently +warns about their use). Besides, they do not add any noticable value +because packages may get recompiled at practically any time. + - + Index: libewf-20120813/ewftools/info_handle.c =================================================================== --- libewf-20120813.orig/ewftools/info_handle.c