diff options
Diffstat (limited to 'scx-veracrypt/veracrypt.spec')
-rw-r--r-- | scx-veracrypt/veracrypt.spec | 256 |
1 files changed, 256 insertions, 0 deletions
diff --git a/scx-veracrypt/veracrypt.spec b/scx-veracrypt/veracrypt.spec new file mode 100644 index 0000000..45f6e84 --- /dev/null +++ b/scx-veracrypt/veracrypt.spec @@ -0,0 +1,256 @@ +%define wx_version_major 3 +%define wx_version_minor 0 +%define wx_version %{wx_version_major}.%{wx_version_minor} + +%define force_wx_gtk2 %{nil} +%define force_wx_gtk2 0 + +################################################################################ + +%define wx_name_postfix %{nil} +%if 0%{?wx_version_major} >= 3 + %if 0%{?wx_version_minor} == 0 + %define wx_name_postfix %{wx_version_major} + %else + %define wx_name_postfix %{wx_version_major}%{wx_version_minor} + %endif +%endif + +# Force toolkit +# e.g. gtk2 instead of gtk3 +%define wx_toolkit %{nil} +%if 0%{?force_wx_gtk2} + %if 0%{?wx_version_major} >= 3 + %if 0%{?wx_version_minor} == 0 + %define wx_toolkit gtk2 + %endif + %endif +%endif + +%undefine update_mime_database_n +%if 0%{?fedora}%{?rhel} + %define update_mime_database_n 1 +%endif + +%define debug_package %{nil} + +%define doc_license %{nil} +%define doc_license 1 +%if 0%{?rhel}%{?fedora} + %if 0%{?rhel} + %if 0%{?rhel} < 7 + %define doc_license 0 + %endif + %else + %if 0%{?fedora} < 19 + %define doc_license 0 + %endif + %endif +%endif + +%define enable_dumpfullversion %{nil} +%define enable_dumpfullversion 0 +%if 0%{?rhel}%{?fedora} + %if 0%{?rhel} + %if 0%{?rhel} > 7 + %define enable_dumpfullversion 1 + %endif + %else + %if 0%{?fedora} > 25 + %define enable_dumpfullversion 1 + %endif + %endif +%endif + +%define license_files src/License.txt + +Name: veracrypt +Version: 1.22 +Release: 3%{?dist} +Group: File tools +#License: Microsoft Public License +#License: Apache License 2.0 +License: ASL 2.0 or TrueCrypt License +Summary: Disk encryption software +#URL: https://veracrypt.codeplex.com +URL: https://www.veracrypt.fr/en/Home.html +#Source0: https://github.com/veracrypt/VeraCrypt/archive/VeraCrypt-VeraCrypt_%{version}.tar.gz +Source0: https://launchpad.net/veracrypt/trunk/%{version}/+download/VeraCrypt_%{version}_Source.tar.bz2 +Patch1: veracrypt-1.0f-2-no-makeself.patch +Patch2: veracrypt-1.0f-2-desktop.patch +# https://github.com/veracrypt/VeraCrypt/issues/198 +# In file included from ../Crypto/cpu.h:175:0, +# from ../Crypto/cpu.c:3: +# ../Crypto/cpu.c: In function 'TryAESNI': +# /usr/lib/gcc/x86_64-redhat-linux/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch +# _mm_aesenc_si128 (__m128i __X, __m128i __Y) +Patch3: veracrypt-1.21-dumpfullversion.patch + +#BuildRequires: wxGTK3-devel +%if "%{?wx_toolkit}" != "" +BuildRequires: compat-wxGTK%{?wx_name_postfix}-%{wx_toolkit}-devel +%else +BuildRequires: wxGTK%{?wx_name_postfix}-devel +%endif +BuildRequires: nasm +BuildRequires: fuse-devel +BuildRequires: ImageMagick +BuildRequires: gzip +BuildRequires: bzip2 +BuildRequires: yasm + +%if 0%{?rhel}%{?fedora} +%if 0%{?rhel} +BuildRequires: ghostscript +%else +BuildRequires: ghostscript-core +%endif +%else +BuildRequires: ghostscript +%endif + +%description +Free disk encryption software based on TrueCrypt. + +%prep +# for 1.19: +#setup -qn "VeraCrypt-VeraCrypt_%{version}" +# for 1.21: +%setup -q -c +%patch1 -p1 +%patch2 -p1 +%if 0%{?enable_dumpfullversion} +%patch3 -p1 +%endif + +%build +%if 0%{wx_version_major} < 3 +WXCONFIG="wx-config" +%else +WXCONFIG="wx-config-%{wx_version}" +%endif +export WXCONFIG + +%if "%{?wx_toolkit}" != "" +if hash "${WXCONFIG}-%{?wx_toolkit}" >/dev/null 2>&1 ; then + WXCONFIG="${WXCONFIG}-%{?wx_toolkit}" + export WXCONFIG +fi +%endif + +pushd "src" +%{__make} WX_CONFIG="${WXCONFIG}" %{?_smp_mflags} +popd + +pushd src/Resources/Icons +for s in {16,48,128,256} ; do + convert "VeraCrypt-${s}x${s}.xpm" "VeraCrypt-${s}x${s}.png" +done +popd + +find "src/Setup/Linux/usr" -xtype f -iname 'License.txt' -print0 | xargs --null -I{} sed -i -re 's/\r$//' '{}' + +find "src/Setup/Linux/usr" "doc/chm" -xtype f \( -iname '*.pdf' -o -iname '*.chm' \) -print0 | while IFS= read -r -d $'\0' file ; do + d="$( dirname "${file}" )" + f="$( basename "${file}" )" + + g="$( sed -re 's/[[:blank:]]/_/g' <<< "${f}" )" + + if [[ "${f}" != "${g}" ]]; then + mv "${file}" "${d}/${g}" + fi +done + +[[ -f "src/Setup/Linux/usr/bin/veracrypt-uninstall.sh" ]] && rm -f "src/Setup/Linux/usr/bin/veracrypt-uninstall.sh" || : + +[[ -f "src/Setup/Linux/usr/share/pixmaps/veracrypt.xpm" ]] && rm -f "src/Setup/Linux/usr/share/pixmaps/veracrypt.xpm" || : + +%install +[[ -d "src/Setup/Linux/usr" ]] && cp -r "src/Setup/Linux/usr" "%{buildroot}"/ || : + +[[ -f "src/Setup/Linux/veracrypt.desktop" ]] && install -p -D -m 0644 "src/Setup/Linux/veracrypt.desktop" "%{buildroot}%{_datadir}/applications/%{name}.desktop" || : +[[ -f "src/Main/veracrypt" ]] && install -p -D -m 0755 "src/Main/veracrypt" "%{buildroot}%{_bindir}/%{name}" || : + +for s in {16,48,128,256} ; do + [[ -f "src/Resources/Icons/VeraCrypt-${s}x${s}.png" ]] || continue + install -p -D -m 0644 "src/Resources/Icons/VeraCrypt-${s}x${s}.png" "%{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png" +done + +for e in {xpm,png} ; do + [[ -f "src/Resources/Icons/VeraCrypt-256x256.${e}" ]] || continue + install -p -D -m 0644 "src/Resources/Icons/VeraCrypt-256x256.${e}" "%{buildroot}%{_datadir}/pixmaps/%{name}.${e}" +done + +%post +/bin/touch --no-create "%{_datadir}/icons/hicolor" &>/dev/null || : +/usr/bin/update-mime-database "%{_datadir}/mime" &>/dev/null || : +update-desktop-database &>/dev/null || : +/sbin/ldconfig + +%postun +if [[ "${1}" -eq "0" ]] ; then + /bin/touch --no-create "%{_datadir}/icons/hicolor" &>/dev/null + /usr/bin/gtk-update-icon-cache "%{_datadir}/icons/hicolor" &>/dev/null || : + /usr/bin/update-mime-database "%{_datadir}/mime" &>/dev/null || : +fi +update-desktop-database &>/dev/null || : +/sbin/ldconfig + +%posttrans +/usr/bin/gtk-update-icon-cache "%{_datadir}/icons/hicolor" &>/dev/null || : +/usr/bin/update-mime-database %{?update_mime_database_n:-n} %{_datadir}/mime &>/dev/null || : + +%files +%if 0%{?doc_license} +%license %{license_files} +%else +%doc %{license_files} +%endif +%doc README.md doc/chm/VeraCrypt_User_Guide.chm doc/EFI-DCS/ doc/html/ +%{_bindir}/%{name} +#%{_datadir}/%{name} +%{_datadir}/applications/*.desktop +%{_datadir}/pixmaps/* +%{_datadir}/icons/hicolor/*/apps/* + +%changelog +* Tue Sep 04 2018 B Stack <bgstack15@gmail.com> - 1.22-1 +- Update to 1.22 + +* Thu Nov 02 2017 Tomasz Tomasik <scx.mail@gmail.com> - 1.21-3 +- Add additional macros for wxGTK +- Add post, postun and posttrans sections +- Rebuild for EL7 + +* Tue Oct 24 2017 Tomasz Tomasik <scx.mail@gmail.com> - 1.21-2 +- Fix for Fedora < 26 +- Rebuild for EL7 + +* Tue Oct 24 2017 Tomasz Tomasik <scx.mail@gmail.com> - 1.21-1 +- Update to version 1.21 +- Update License and URL +- Change source +- Backport patch from GitHub: https://github.com/veracrypt/VeraCrypt/issues/198 +- Rewrite prep, build and install sections +- Use doc and license macro +- Rebuild for EL7 + +* Mon Oct 23 2017 Tomasz Tomasik <scx.mail@gmail.com> - 1.19-5 +- Update changelog +- Rebuild for EL7 + +* Mon Apr 24 2017 Tomasz Tomasik <scx.mail@gmail.com> - 1.19-4 +- Update requirements +- Rewrite build and install sections +- Rebuilt for EL7 + +* Thu Nov 17 2016 Huaren Zhong <huaren.zhong@gmail.com> - 1.19 +- Rebuild for Fedora + +* Tue Oct 18 2016 Denis Silakov <denis.silakov@rosalab.ru> - 1.19-1 +- (9623fad) Merge pull request #4 from tremod/veracrypt:rosa2016.1 +- (9623fad) Update to 1.19 + +* Sun Oct 18 2015 Denis Silakov <dsilakov@gmail.com> - 1.16-1 +- (eac346d) Updated to 1.16 + |