summaryrefslogtreecommitdiff
path: root/freefilesync
diff options
context:
space:
mode:
authorB Stack <bgstack15@gmail.com>2019-02-18 10:43:53 -0500
committerB Stack <bgstack15@gmail.com>2019-02-18 10:43:53 -0500
commitd37779e8b1af7b7237844a9ff7c705296718835d (patch)
tree403405057d49f01c278ef6e4f285f53a0a4e872a /freefilesync
parentWIP: freefilesync on centos7 raw (diff)
downloadstackrpms-d37779e8b1af7b7237844a9ff7c705296718835d.tar.gz
stackrpms-d37779e8b1af7b7237844a9ff7c705296718835d.tar.bz2
stackrpms-d37779e8b1af7b7237844a9ff7c705296718835d.zip
WIP: FreeFileSync on CentOS 7, part 1
In my original dev environment, I can now compile and execute the main binaries. My next commit should include some attempts at static linking so the runtime environment does not need the hacked openssl 1.1.0h packages.
Diffstat (limited to 'freefilesync')
-rw-r--r--freefilesync/README-freefilesync.md25
-rw-r--r--freefilesync/credits.md4
-rw-r--r--freefilesync/ffs.el7.patch107
-rw-r--r--freefilesync/ffs.fc28.patch (renamed from freefilesync/ffs_makefile.patch)24
-rw-r--r--freefilesync/ffs_abi.patch12
-rw-r--r--freefilesync/ffs_fedora.patch24
-rw-r--r--freefilesync/ffs_sftp.patch2
-rw-r--r--freefilesync/freefilesync.spec83
8 files changed, 182 insertions, 99 deletions
diff --git a/freefilesync/README-freefilesync.md b/freefilesync/README-freefilesync.md
new file mode 100644
index 0000000..02d0505
--- /dev/null
+++ b/freefilesync/README-freefilesync.md
@@ -0,0 +1,25 @@
+# Summary for CentOS 7 compilation of freefilesync
+
+### Dependencies to build FreeFileSync on CentOS 7
+All of the packages in the next section, and also
+* devtoolset-7 [Software Collections (SCL)][3]
+* custom patches provided in this repo.
+
+### Sources of the bgstack15/FreeFileSync copr packages
+Custom packages:
+* openssl: [bgstack15][1]
+* libssh2: [city-fan][2]
+* curl: city-fan
+* libmetalink: city-fan
+* libpsl: city-fan
+
+# Credits
+This package, freefilesync, is made possible by the concerted efforts of many people and groups
+* Zenju, author of the upstream project [FreeFileSync](http://freefilesync.org)
+* [PhantomX](https://github.com/PhantomX/)/chinforpms [freefilesync spec](https://github.com/PhantomX/chinforpms/tree/master/freefilesync)
+* My [original freefilesync spec](https://gitlab.com/bgstack15/freefilesync-rpm/)
+
+# References
+[1][https://bgstack15.wordpress.com]
+[2][http://www.city-fan.org/ftp/contrib/yum-repo/]
+[3][https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/]
diff --git a/freefilesync/credits.md b/freefilesync/credits.md
deleted file mode 100644
index 8a92965..0000000
--- a/freefilesync/credits.md
+++ /dev/null
@@ -1,4 +0,0 @@
-This package, freefilesync, is made possible by the concerted efforts of many people and groups
-* Zenju, author of the upstream project [FreeFileSync](http://freefilesync.org)
-* [PhantomX](https://github.com/PhantomX/)/chinforpms [freefilesync spec](https://github.com/PhantomX/chinforpms/tree/master/freefilesync)
-* My [original freefilesync spec](https://gitlab.com/bgstack15/freefilesync-rpm/)
diff --git a/freefilesync/ffs.el7.patch b/freefilesync/ffs.el7.patch
new file mode 100644
index 0000000..0763296
--- /dev/null
+++ b/freefilesync/ffs.el7.patch
@@ -0,0 +1,107 @@
+The cstddef discovery is from https://stackoverflow.com/questions/52567517/freefilesync-c-error-byte-is-not-a-member-of-std
+Some changes just make the application work better in an installed setting (e.g., the hard-coded resouce path).
+Tricking the wxWidgets ABI version comes from https://stackoverflow.com/questions/45123664/wxwidgets-runtime-error-mismatch-version/47822976#47822976
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/FreeFileSync/Source/base/ffs_paths.cpp 10.9-1.el7/FreeFileSync/Source/base/ffs_paths.cpp
+--- 10.9-0/FreeFileSync/Source/base/ffs_paths.cpp 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/FreeFileSync/Source/base/ffs_paths.cpp 2019-02-17 10:43:22.286986341 -0500
+@@ -59,7 +59,7 @@
+ ZEN_ON_SCOPE_EXIT(wxTheApp->SetAppName(appName));
+
+ //if (isPortableVersion())
+- return appendSeparator(getExeFolderParentPath());
++ return appendSeparator("/usr") + appendSeparator("share") + appendSeparator("freefilesync");
+ //else //use OS' standard paths
+ // return appendSeparator(utfTo<Zstring>(wxStandardPathsBase::Get().GetResourcesDir()));
+ }
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/FreeFileSync/Source/Makefile 10.9-1.el7/FreeFileSync/Source/Makefile
+--- 10.9-0/FreeFileSync/Source/Makefile 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/FreeFileSync/Source/Makefile 2019-02-17 10:50:27.282820639 -0500
+@@ -1,10 +1,10 @@
+-EXENAME = FreeFileSync_$(shell arch)
++EXENAME = FreeFileSync
+
+ CXXFLAGS = -std=c++17 -pipe -DWXINTL_NO_GETTEXT_MACRO -DLIBSSH2_OPENSSL -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \
+ -Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wshadow -Wnon-virtual-dtor \
+- -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread
++ -O3 -DNDEBUG -fPIC `wx-config --version=3.0 --cxxflags --debug=no` -pthread
+
+-LINKFLAGS = -s -no-pie `wx-config --libs std, aui --debug=no` -pthread
++LINKFLAGS = -s -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-z,relro -no-pie `wx-config --version=3.0 --libs std, aui --debug=no | sed -r -e 's/-[^[:space:]]+web[^[:space:]]+//;'` -lz -pthread
+
+
+ CXXFLAGS += `pkg-config --cflags openssl`
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/FreeFileSync/Source/RealTimeSync/Makefile 10.9-1.el7/FreeFileSync/Source/RealTimeSync/Makefile
+--- 10.9-0/FreeFileSync/Source/RealTimeSync/Makefile 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/FreeFileSync/Source/RealTimeSync/Makefile 2019-02-17 10:50:43.699007372 -0500
+@@ -1,10 +1,10 @@
+-EXENAME = RealTimeSync_$(shell arch)
++EXENAME = RealTimeSync
+
+ CXXFLAGS = -std=c++17 -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \
+ -Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wshadow -Wnon-virtual-dtor \
+- -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread
++ -O3 -DNDEBUG -fPIC `wx-config --version=3.0 --cxxflags --debug=no` -pthread
+
+-LINKFLAGS = -s -no-pie `wx-config --libs std, aui --debug=no` -pthread
++LINKFLAGS = -s -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -no-pie `wx-config --version=3.0 --cxxflags --libs std, aui --debug=no | sed -r -e 's/-[^[:space:]]+web[^[:space:]]+//;'` -lz -pthread
+
+ #Gtk - support "no button border"
+ CXXFLAGS += `pkg-config --cflags gtk+-2.0`
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.9-1.el7/FreeFileSync/Source/ui/small_dlgs.cpp
+--- 10.9-0/FreeFileSync/Source/ui/small_dlgs.cpp 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/FreeFileSync/Source/ui/small_dlgs.cpp 2019-02-17 10:42:29.741388638 -0500
+@@ -115,6 +115,8 @@
+ L" x64";
+ #endif
+
++ build +=
++ L" for CentOS 7";
+
+ GetSizer()->SetSizeHints(this); //~=Fit() + SetMinSize()
+
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/zen/ring_buffer.h 10.9-1.el7/zen/ring_buffer.h
+--- 10.9-0/zen/ring_buffer.h 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/zen/ring_buffer.h 2019-02-17 09:53:10.907818287 -0500
+@@ -9,6 +9,7 @@
+
+ #include <cassert>
+ #include "scope_guard.h"
++#include <cstddef>
+
+
+ namespace zen
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/zen/serialize.h 10.9-1.el7/zen/serialize.h
+--- 10.9-0/zen/serialize.h 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/zen/serialize.h 2019-02-17 09:53:06.701772057 -0500
+@@ -9,6 +9,7 @@
+
+ #include <functional>
+ #include <cstdint>
++#include <cstddef>
+ #include "string_base.h"
+ //keep header clean from specific stream implementations! (e.g.file_io.h)! used by abstract.h!
+
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/wx+/app_main.h 10.9-1/wx+/app_main.h
+--- 10.9-0/wx+/app_main.h 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1/wx+/app_main.h 2019-02-16 13:51:32.437266070 -0500
+@@ -7,6 +7,8 @@
+ #ifndef APP_MAIN_H_08215601837818347575856
+ #define APP_MAIN_H_08215601837818347575856
+
++#define __GXX_ABI_VERSION 1002
++
+ #include <wx/window.h>
+ #include <wx/app.h>
+
+diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/FreeFileSync/Source/RealTimeSync/application.h 10.9-1.el7/FreeFileSync/Source/RealTimeSync/application.h
+--- 10.9-0/FreeFileSync/Source/RealTimeSync/application.h 2019-02-13 16:05:15.000000000 -0500
++++ 10.9-1.el7/FreeFileSync/Source/RealTimeSync/application.h 2019-02-18 08:53:14.017850931 -0500
+@@ -7,6 +7,8 @@
+ #ifndef APPLICATION_H_18506781708176342677
+ #define APPLICATION_H_18506781708176342677
+
++#define __GXX_ABI_VERSION 1002
++
+ #include <wx/app.h>
+
+
diff --git a/freefilesync/ffs_makefile.patch b/freefilesync/ffs.fc28.patch
index 79a8233..e112b1f 100644
--- a/freefilesync/ffs_makefile.patch
+++ b/freefilesync/ffs.fc28.patch
@@ -1,3 +1,27 @@
+diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp
+--- 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-07 05:03:34.000000000 -0400
++++ 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-29 22:13:40.240595334 -0400
+@@ -106,6 +106,8 @@
+ L" x64";
+ #endif
+
++ build +=
++ L" for Fedora";
+
+ GetSizer()->SetSizeHints(this); //~=Fit() + SetMinSize()
+
+diff -Naur 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp
+--- 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-13 06:58:40.771249592 -0500
++++ 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-16 21:34:30.341077845 -0500
+@@ -66,7 +66,7 @@
+ ZEN_ON_SCOPE_EXIT(wxTheApp->SetAppName(appName));
+
+ //if (isPortableVersion())
+- return appendSeparator(getExeFolderParentPath());
++ return appendSeparator("/usr") + appendSeparator("share") + appendSeparator("freefilesync");
+ //else //use OS' standard paths
+ // return appendSeparator(utfTo<Zstring>(wxStandardPathsBase::Get().GetResourcesDir()));
+ }
diff -Naur -x '*.orig' -x '*.rej' 10.9-0/FreeFileSync/Source/Makefile 10.9-1/FreeFileSync/Source/Makefile
--- 10.3-0/FreeFileSync/Source/Makefile 2019-02-10 22:01:42.138160180 -0500
+++ 10.9-1/FreeFileSync/Source/Makefile 2019-02-11 21:48:19.729739859 -0500
diff --git a/freefilesync/ffs_abi.patch b/freefilesync/ffs_abi.patch
deleted file mode 100644
index 375397c..0000000
--- a/freefilesync/ffs_abi.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur -x '*.orig' -x '*.rej' -x '*.swp' 10.9-0/wx+/app_main.h 10.9-1/wx+/app_main.h
---- 10.9-0/wx+/app_main.h 2019-02-13 16:05:15.000000000 -0500
-+++ 10.9-1/wx+/app_main.h 2019-02-16 13:51:32.437266070 -0500
-@@ -7,6 +7,8 @@
- #ifndef APP_MAIN_H_08215601837818347575856
- #define APP_MAIN_H_08215601837818347575856
-
-+#define __GXX_ABI_VERSION 1002
-+
- #include <wx/window.h>
- #include <wx/app.h>
-
diff --git a/freefilesync/ffs_fedora.patch b/freefilesync/ffs_fedora.patch
deleted file mode 100644
index 1fc0a50..0000000
--- a/freefilesync/ffs_fedora.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Naur -x '*.orig' -x '*.rej' 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp
---- 10.3-0/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-07 05:03:34.000000000 -0400
-+++ 10.3-2/FreeFileSync/Source/ui/small_dlgs.cpp 2018-08-29 22:13:40.240595334 -0400
-@@ -106,6 +106,8 @@
- L" x64";
- #endif
-
-+ build +=
-+ L" for Fedora";
-
- GetSizer()->SetSizeHints(this); //~=Fit() + SetMinSize()
-
-diff -Naur 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp
---- 10.6-0/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-13 06:58:40.771249592 -0500
-+++ 10.6-1/FreeFileSync/Source/base/ffs_paths.cpp 2018-11-16 21:34:30.341077845 -0500
-@@ -66,7 +66,7 @@
- ZEN_ON_SCOPE_EXIT(wxTheApp->SetAppName(appName));
-
- //if (isPortableVersion())
-- return appendSeparator(getExeFolderParentPath());
-+ return appendSeparator("/usr") + appendSeparator("share") + appendSeparator("freefilesync");
- //else //use OS' standard paths
- // return appendSeparator(utfTo<Zstring>(wxStandardPathsBase::Get().GetResourcesDir()));
- }
diff --git a/freefilesync/ffs_sftp.patch b/freefilesync/ffs_sftp.patch
index 34dc9ad..056cf91 100644
--- a/freefilesync/ffs_sftp.patch
+++ b/freefilesync/ffs_sftp.patch
@@ -1,3 +1,5 @@
+The upstream author observed that some of the values he uses are not in the libssh2 public headers. I don't know where he uses them from, but I had to replace them here to get this to compile.
+https://github.com/libssh2/libssh2/issues/90
diff -x '*.orig' -x '*.swp' -x '*.rej' -Naur 10.9-0/FreeFileSync/Source/fs/sftp.cpp 10.9-1/FreeFileSync/Source/fs/sftp.cpp
--- 10.9-0/FreeFileSync/Source/fs/sftp.cpp 2019-02-10 16:42:29.139040980 -0500
+++ 10.9-1/FreeFileSync/Source/fs/sftp.cpp 2019-02-10 21:28:00.030732089 -0500
diff --git a/freefilesync/freefilesync.spec b/freefilesync/freefilesync.spec
index 2136e86..6d4caf9 100644
--- a/freefilesync/freefilesync.spec
+++ b/freefilesync/freefilesync.spec
@@ -1,16 +1,17 @@
-# Summary for CentOS 7 compilation of freefilesync:
-# 1. city-fan repo (http://www.city-fan.org/ftp/contrib/yum-repo/) for newer libssh2
-# 2. sclo for gcc 7.3.1
-# 3. all sorts of custom patches to code in freefilesync.spec and some standalone patch files.
-# 4. custom openssl 1.1.0-devel and -libs packages.
%global pkgname FreeFileSync
%global prog2name RealTimeSync
%global dummy_package 0
+%define min_libcurl %{nil}
+%define min_libssh2 %{nil}
+%define min_openssl %{nil}
%define scl_env %{nil}
%define scl_buildreq coreutils
%if 0%{?el6}%{?el7}
%define scl_env devtoolset-7
%define scl_buildreq devtoolset-7-toolchain
+ %define min_libcurl >= 7.64.0
+ %define min_libssh2 >= 1.8.0
+ %define min_openssl >= 1.1.0h
%endif
Name: freefilesync
Version: 10.9
@@ -25,14 +26,11 @@ URL: http://www.freefilesync.org/
Source0: https://gitlab.com/opensource-tracking/%{pkgname}/-/archive/%{version}/%{pkgname}-%{version}.tar.gz
Source1: %{pkgname}.desktop
Source2: %{prog2name}.desktop
-Patch0: ffs_makefile.patch
-Patch1: ffs_no_check_updates.patch
-Patch2: ffs_no_wx311.patch
-Patch3: ffs_fedora.patch
-Patch4: ffs_allow_parallel_ops.patch
-Patch5: ffs_old_libcurl.patch
-Patch6: ffs_sftp.patch
-Patch7: ffs_abi.patch
+Patch0: ffs_no_check_updates.patch
+Patch1: ffs_no_wx311.patch
+Patch2: ffs%{?dist}.patch
+Patch3: ffs_allow_parallel_ops.patch
+Patch4: ffs_sftp.patch
Packager: B Stack <bgstack15@gmail.com>
# WARNING: the build will FAIL if you have wxGTK3-devel installed. Only wxGTK2-devel should be on the build system.
@@ -41,19 +39,18 @@ BuildRequires: compat-wxGTK3-gtk2-devel
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++
BuildRequires: ImageMagick
-BuildRequires: libcurl-devel
-BuildRequires: libssh2-devel
-BuildRequires: openssl-devel
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: pkgconfig(libselinux)
BuildRequires: pkgconfig(zlib)
+BuildRequires: libcurl-devel %{min_libcurl}
+BuildRequires: libssh2-devel %{min_libssh2}
+BuildRequires: openssl-devel %{min_openssl}
%if 0%{?el6}%{?el7}
BuildRequires: wxGTK-devel
-%endif
-%if "%{?scl_env}" != ""
BuildRequires: %{scl_buildreq}
%endif
Requires: hicolor-icon-theme
+Requires: xdg-utils
%description
FreeFileSync is a free Open Source software that helps you synchronize
@@ -73,41 +70,13 @@ find . ! -type d \( -name '*.c' -o -name '*.cpp' -o -name '*.h' \) \
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-
-%if "%{?scl_env}" != ""
- # everything minus the -fPIC got farther but failed asking for -fPIC
- # another option is to use the output of "wx-config --libs std, aui --debug=no" from fc28 and find the 3.0 libs and use those here.
- %{__sed} \
- -e 's|-O3 -DNDEBUG|& -I/usr/include/wx-3.0-gtk2 -I/usr/lib64/wx/include/gtk2-unicode-3.0-gtk2 -fPIC|;' \
- -e '/LINKFLAGS/s|-no-pie|& -I/usr/include/wx-3.0-gtk2 -I/usr/lib64/wx/include/gtk2-unicode-3.0-gtk2 -pthread -lwx_gtk2u_aui-3.0-gtk2 -lwx_gtk2u_xrc-3.0-gtk2 -lwx_gtk2u_html-3.0-gtk2 -lwx_gtk2u_qa-3.0-gtk2 -lwx_gtk2u_adv-3.0-gtk2 -lwx_gtk2u_core-3.0-gtk2 -lwx_baseu_xml-3.0-gtk2 -lwx_baseu_net-3.0-gtk2 -lwx_baseu-3.0-gtk2|;' \
- -e 's|-O3 -DNDEBUG|-DNDEBUG -D"warn_static(arg)= " -DZEN_LINUX %{optflags}|g' \
- -e '/LINKFLAGS/s|-s|-Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld %{__global_ldflags}|g' \
- -e '/LINKFLAGS/s|LINKLAGS\s*=\s*|&--static |;' \
- -i %{pkgname}/Source/Makefile %{pkgname}/Source/%{prog2name}/Makefile
-
- # old libcurl problems again, perhaps solved with http://www.city-fan.org/ftp/contrib/yum-repo/rhel7/x86_64/
- #sed -r -e '/CURLE_WEIRD_SERVER_REPLY|CURLE_HTTP2|CURLE_NO_CONNECTION_AVAILABLE|CURLE_SSL_PINNEDPUBKEYNOTMATCH|CURLE_SSL_INVALIDCERTSTATUS|CURLE_RECURSIVE_API_CALL|CURLINFO_ACTIVESOCKET/s|^|//|;' \
- # -i %{pkgname}/Source/fs/libcurl/curl_wrap.h
-
- # https://stackoverflow.com/questions/52567517/freefilesync-c-error-byte-is-not-a-member-of-std
- sed -i '1s/^/#include <cstddef>\n/' zen/serialize.h zen/ring_buffer.h
-
- # trying to use some openssl-devel from 1.1.0 to satisfy it, from city-fan?
- ## use openssl 1.0.2 on centos7
- #sed -r -e '/OPENSSL_VERSION_NUMBER/s|0x[0-9]+L|0x100020beL|;' \
- # -i FreeFileSync/Source/fs/libssh2/*.cpp
-
-%else
-# only when not el6/el7
+
# custom build parameters for packaging application in rpm
- %{__sed} \
- -e 's|-O3 -DNDEBUG|-DNDEBUG -D"warn_static(arg)= " -DZEN_LINUX %{build_cxxflags}|g' \
- -e '/LINKFLAGS/s|-s|%{__global_ldflags}|g' \
- -i %{pkgname}/Source/Makefile %{pkgname}/Source/%{prog2name}/Makefile
-%endif
+# fedora provides build_cxxflags, which is really just optflags
+%{__sed} \
+ -e 's|-O3 -DNDEBUG|-DNDEBUG -D"warn_static(arg)= " -DZEN_LINUX %{?build_cxxflags:%{build_cxxflags}}%{!?build_cxxflags:%{optflags}}|g' \
+ -e '/LINKFLAGS/s|-s|%{__global_ldflags}|;' \
+ -i %{pkgname}/Source/Makefile %{pkgname}/Source/%{prog2name}/Makefile
%build
%if !%{dummy_package}
@@ -115,8 +84,7 @@ find . ! -type d \( -name '*.c' -o -name '*.cpp' -o -name '*.h' \) \
scl enable %{scl_env} /bin/bash << EOF
%endif
%make_build -C %{pkgname}/Source
- # turned off while building ffs for centos 7
- #%make_build -C %{pkgname}/Source/%{prog2name}
+ %make_build -C %{pkgname}/Source/%{prog2name}
%if "%{?scl_env}" != ""
EOF
%endif
@@ -129,9 +97,7 @@ EOF
#%%make_install -C %%{pkgname}/Source/%%{prog2name}
pushd %{pkgname}/Build
install -d %{buildroot}%{_bindir} %{buildroot}%{_datadir}/%{name}
-# turned off while building ffs for centos 7
-#install -Dm 0755 -t %{buildroot}%{_bindir} Bin/%{pkgname} Bin/%{prog2name}
-install -Dm 0755 -t %{buildroot}%{_bindir} Bin/%{pkgname}
+install -Dm 0755 -t %{buildroot}%{_bindir} Bin/%{pkgname} Bin/%{prog2name}
cp -pr Languages %{buildroot}%{_datadir}/%{name}
install -Dm 0644 ding.wav gong.wav harp.wav Resources.zip styles.gtk_rc %{buildroot}%{_datadir}/%{name}
popd
@@ -194,8 +160,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%license %attr(444, -, -) License.txt
%doc %attr(444, -, -) Changelog.txt
%{_bindir}/%{pkgname}
-# turned off while building ffs for centos 7
-#%{_bindir}/%{prog2name}
+%{_bindir}/%{prog2name}
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/*x*/apps/*.png
%{_datadir}/%{name}
bgstack15