diff options
author | B Stack <bgstack15@gmail.com> | 2019-02-18 10:43:53 -0500 |
---|---|---|
committer | B Stack <bgstack15@gmail.com> | 2019-02-18 10:43:53 -0500 |
commit | d37779e8b1af7b7237844a9ff7c705296718835d (patch) | |
tree | 403405057d49f01c278ef6e4f285f53a0a4e872a /freefilesync/ffs.el7.patch | |
parent | WIP: freefilesync on centos7 raw (diff) | |
download | stackrpms-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/ffs.el7.patch')
-rw-r--r-- | freefilesync/ffs.el7.patch | 107 |
1 files changed, 107 insertions, 0 deletions
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> + + |