Hello community,

here is the log from the commit of package encfs for openSUSE:Factory checked 
in at 2017-03-31 15:08:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/encfs (Old)
 and      /work/SRC/openSUSE:Factory/.encfs.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "encfs"

Fri Mar 31 15:08:57 2017 rev:36 rq:482539 version:1.9.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/encfs/encfs.changes      2017-02-07 
12:05:46.274066661 +0100
+++ /work/SRC/openSUSE:Factory/.encfs.new/encfs.changes 2017-03-31 
15:09:29.524345708 +0200
@@ -1,0 +2,26 @@
+Sat Mar  4 12:03:10 UTC 2017 - [email protected]
+
+- update to 1.9.1
+  * Fix empty log file creation
+  * Link with libintl when available
+  * add LIB_INSTALL_DIR override during build to aid in customized install 
+    locations
+  * upgrade easylogging++
+- update to 1.9
+  * switch to CMake
+  * OSX build improvements, RPATH setup
+  * Drop Boost dependency. Uses tinyxml2 to read existing XML config archives.
+  * Drop librlog dependency. Uses easylogging++ for logging.
+  * add encfs_create operation
+  * replace getdir with readdir
+  * cleanup includes and reformat code
+  * allow writes in reverse mode when no header is used
+  * make use of C++11 (eg std unordered_map in place of GNU internal hashmap)
+- split *.mo files to a separate package encfs-lang
+- preperation to include checks
+- removed cmake-libdir-name.patch and old-perm-checks.patch which are not
+  needed any more
+- install tinyxml2-3 if not available in the official repos 
+- configure-fix.patch: also not needed anymore
+
+-------------------------------------------------------------------

Old:
----
  configure-fix.patch
  encfs-1.8.1.tar.gz

New:
----
  encfs-1.9.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ encfs.spec ++++++
--- /var/tmp/diff_new_pack.zjb5HU/_old  2017-03-31 15:09:30.012276725 +0200
+++ /var/tmp/diff_new_pack.zjb5HU/_new  2017-03-31 15:09:30.016276159 +0200
@@ -16,29 +16,62 @@
 #
 
 
+# Perl-Test-More >= 0.31 is requires by checks but yet not present in SuSE 
repos
+%define do_checks 0
+
+# cmake macro on SuSE forces linker to use '--no-undefined' but this will 
+# produce errors related to easylogging++ like # "undefined references to 
+# `el::base::elStorage'". See https://github.com/vgough/encfs/issues/291
+%define use_cmake_macro 0
+
+# Leap 42.2 and Tumbleweed have tinyxml2-3. For other distribution use the
+# tinyxml2-3 that is shipped with encfs.
+%if 0%{?sle_version}>=120200 || 0%{?suse_version} > 1320
+%define os_has_tinyxml2 1
+%else
+%define os_has_tinyxml2 0
+%endif
+
 Name:           encfs
-Version:        1.8.1
+Version:        1.9.1
 Release:        0
 Summary:        Userspace Encrypted File System
 License:        GPL-2.0+ and GPL-3.0+
 Group:          System/Filesystems
 Url:            https://vgough.github.io/encfs/
-Source:         
https://github.com/vgough/encfs/releases/download/v%{version}/%{name}-%{version}.tar.gz
-Patch0:         configure-fix.patch
-%if 0%{?suse_version} > 1325
-BuildRequires:  libboost_serialization-devel
-%else
-BuildRequires:  boost-devel
-%endif
+Source:         
https://github.com/vgough/encfs/releases/download/v%{version}/encfs-%{version}.tar.gz
+BuildRequires:  cmake >= 3.1
 BuildRequires:  fuse-devel
 BuildRequires:  gcc-c++
 BuildRequires:  libtool
 BuildRequires:  openssl-devel
 BuildRequires:  pkgconfig
-BuildRequires:  rlog-devel
 BuildRequires:  zlib-devel
+%if %{os_has_tinyxml2}
+BuildRequires:  tinyxml2-devel
+%endif
 Requires:       fuse
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+Recommends:     %{name}-lang = %{version}
+
+# requirements for check
+%if %{do_checks}
+BuildRequires:  fuse
+BuildRequires:  perl(Digest::MD5)
+BuildRequires:  perl(File::Copy)
+BuildRequires:  perl(File::Path)
+BuildRequires:  perl(File::Temp)
+BuildRequires:  perl(IO::Handle)
+BuildRequires:  perl(Test::Harness)
+BuildRequires:  perl(Test::More) => 31
+BuildRequires:  perl(Time::HiRes)
+%if %{os_has_tinyxml2}
+BuildRequires:  libtinyxml2-3
+%endif
+BuildRequires:  expect
+BuildRequires:  openssl
+BuildRequires:  zlib
+%endif
 
 %description
 EncFS provides an encrypted file system, layered on top of a normal
@@ -58,35 +91,81 @@
 EncFS is implemented as a userspace filesystem in an unprivileged
 application using fuse (FUSE (Filesystem in USErspace)).
 
+
 %lang_package
 
 %prep
-%setup -q
-%patch0 -p1
+%setup 
 
 %build
-autoreconf -fiv
+#simply calling %%cmake macro does not work since the macro hardcodes 
+#'--no-undefined' which breaks build with errors from easylogging++
+%if %{use_cmake_macro}
+%cmake
+%else
+# call cmake similarily to %%cmake macro but without '--no-undefined'
+mkdir build
+cd build
+/usr/bin/cmake .. -G"Unix Makefiles" \
+ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
+ -DINCLUDE_INSTALL_DIR:PATH=%{_includedir} \
+ -DLIB_INSTALL_DIR:PATH=%{_libdir} \
+ -DSYSCONF_INSTALL_DIR:PATH=%{_sysconfdir} \
+ -DSHARE_INSTALL_PREFIX:PATH=%{_datadir} \
+ -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_C_FLAGS="${CFLAGS:-%optflags} -DNDEBUG" \
+ -DCMAKE_CXX_FLAGS="${CXXFLAGS:-%optflags} -DNDEBUG" \
+ -DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now" \
+ -DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now" \
+ -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now" \
+%if "%{?_lib}" == "lib64" 
+ -DLIB_SUFFIX=64 \
+%endif  
+ -DCMAKE_SKIP_RPATH:BOOL=ON \
+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
+ -DBUILD_SHARED_LIBS:BOOL=ON \
+ -DBUILD_STATIC_LIBS:BOOL=OFF \
+ -DCMAKE_COLOR_MAKEFILE:BOOL=OFF \
+ -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \
+ -DCMAKE_MODULES_INSTALL_DIR=%{_datadir}/cmake/Modules \
+%if %{os_has_tinyxml2}
+ -DUSE_INTERNAL_TINYXML:BOOL=OFF
+%endif
 
-%configure --with-boost-libdir=%{_libdir}
-make %{?_smp_mflags}
+make %{?_smp_mflags} VERBOSE=1
+%endif
 
 %install
-make DESTDIR="$RPM_BUILD_ROOT" install
-rm -f %{buildroot}%{_libdir}/*.{la,so}
+%cmake_install
+%__install -d -D -m 0755 %{buildroot}%{_libdir}
+cp -a build/libencfs.so.* %{buildroot}%{_libdir}
+%if %{os_has_tinyxml2}==0
+cp -a build/internal/tinyxml2-3.0.0/libtinyxml2.so.* %{buildroot}%{_libdir}
+%endif 
+chmod 755 "%{buildroot}%{_bindir}/encfssh"
+
 %find_lang %{name}
 
-%post
-%{run_ldconfig}
+%post -p /sbin/ldconfig
 
-%postun
-%{run_ldconfig}
+%postun -p /sbin/ldconfig
+
+%check
+%if %{do_checks} 
+export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/build:
+./test.sh
+%endif
 
 %files
 %defattr(-,root,root)
-%doc AUTHORS COPYING* ChangeLog DESIGN.md PERFORMANCE.md README* TRANSLATORS
+%doc AUTHORS COPYING* ChangeLog DESIGN.md PERFORMANCE.md README*
 %{_mandir}/man?/*
 %{_bindir}/encfs*
 %{_libdir}/libencfs.so.*
+%if %{os_has_tinyxml2}==0
+%{_libdir}/libtinyxml2.so.*
+%endif
 
 %files lang -f %{name}.lang
 %defattr(-,root,root)

++++++ encfs-1.8.1.tar.gz -> encfs-1.9.1.tar.gz ++++++
++++ 130754 lines of diff (skipped)


Reply via email to