From 7cbc853c51d7a202772626410e25158c42364d06 Mon Sep 17 00:00:00 2001 From: B Stack Date: Tue, 19 Feb 2019 09:03:50 -0500 Subject: WIP: remove the use of %dist to include patches I finally realized that copr builds the srpm in a fedora environment and then uses that srpm everywhere, including the epel-6 and epel-7 chroots, where the el7.patch file was now absent. So now the spec depends on both ffs_fedora.patch and ffs_el.patch --- freefilesync/ffs_el.patch | 107 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 freefilesync/ffs_el.patch (limited to 'freefilesync/ffs_el.patch') diff --git a/freefilesync/ffs_el.patch b/freefilesync/ffs_el.patch new file mode 100644 index 0000000..0763296 --- /dev/null +++ b/freefilesync/ffs_el.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(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 + #include "scope_guard.h" ++#include + + + 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 + #include ++#include + #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 + #include + +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 + + -- cgit