Author: bgstack15 Source: Original research Last-Modified: 2022-05-22 Message: Main patch to compile on Fedora History: ffs_fedora 2020-07-22 now uses gtk3 diff -Naur 10.13-0/FreeFileSync/Source/ffs_paths.cpp 10.13-1/FreeFileSync/Source/ffs_paths.cpp --- 10.13-0/FreeFileSync/Source/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 +++ 11.21-1/FreeFileSync/Source/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 @@ -49,7 +49,7 @@ Zstring fff::getResourceDirPath() { - return appendPath(getProcessParentFolderPath(), Zstr("Resources")); + return Zstr("/usr/share/freefilesync/"); } diff -Naur -x '*.rej' -x '*.orig' -x '*.git*' 11.4-0/FreeFileSync/Source/Makefile 11.4-1/FreeFileSync/Source/Makefile --- 11.4-0/FreeFileSync/Source/Makefile 2020-12-08 20:49:38.675976861 -0500 +++ 11.4-1/FreeFileSync/Source/Makefile 2020-12-08 21:01:57.174590803 -0500 @@ -1,10 +1,10 @@ -exeName = FreeFileSync_$(shell arch) +exeName = FreeFileSync -cxxFlags = -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ +cxxFlags += -std=c++2b -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 -Wnon-virtual-dtor -Wno-unused-function -Wshadow -Wno-maybe-uninitialized \ -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread -linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread +linkFlags += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -lz -pthread cxxFlags += `pkg-config --cflags openssl` @@ -16,9 +16,10 @@ cxxFlags += `pkg-config --cflags libssh2` linkFlags += `pkg-config --libs libssh2` -cxxFlags += `pkg-config --cflags gtk+-2.0` +cxxFlags += `pkg-config --cflags gtk+-3.0` +linkFlags += `pkg-config --libs gtk+-3.0` #treat as system headers so that warnings are hidden: -cxxFlags += -isystem/usr/include/gtk-2.0 +cxxFlags += -isystem/usr/include/gtk-3.0 #support for SELinux (optional) SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES) diff -Naur -x '*.rej' -x '*.orig' -x '*.git*' 11.4-0/FreeFileSync/Source/RealTimeSync/Makefile 11.4-1/FreeFileSync/Source/RealTimeSync/Makefile --- 11.4-0/FreeFileSync/Source/RealTimeSync/Makefile 2020-12-08 20:49:38.675976861 -0500 +++ 11.4-1/FreeFileSync/Source/RealTimeSync/Makefile 2020-12-08 21:01:19.720188711 -0500 @@ -1,15 +1,16 @@ -exeName = RealTimeSync_$(shell arch) +exeName = RealTimeSync -cxxFlags = -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ +cxxFlags += -std=c++2b -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 -Wnon-virtual-dtor -Wno-unused-function -Wshadow -Wno-maybe-uninitialized \ -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread -linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread +linkFlags += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -lz -pthread #Gtk - support "no button border" -cxxFlags += `pkg-config --cflags gtk+-2.0` +cxxFlags += `pkg-config --cflags gtk+-3.0` +linkFlags += `pkg-config --libs gtk+-3.0` #treat as system headers so that warnings are hidden: -cxxFlags += -isystem/usr/include/gtk-2.0 +cxxFlags += -isystem/usr/include/gtk-3.0 cppFiles= cppFiles+=application.cpp diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.19-0/FreeFileSync/Source/ui/small_dlgs.cpp 11.12-1/FreeFileSync/Source/ui/small_dlgs.cpp --- 10.11-0/FreeFileSync/Source/ui/small_dlgs.cpp 2019-12-27 07:56:06.714625467 -0500 +++ 11.12-1/FreeFileSync/Source/ui/small_dlgs.cpp 2021-07-15 09:03:57.753183052 -0400 @@ -93,6 +93,8 @@ build += LTR_MARK; //fix Arabic build += utfTo(cpuArchName); + build += L" for Fedora"; + build += SPACED_BULLET; build += utfTo(formatTime(formatDateTag, getCompileTime())); Message: some random sloppiness with a missing graphical asset. It's not important to the application. --- 11.22-0/FreeFileSync/Source/ui/small_dlgs.cpp 2022-06-26 16:03:49.887270966 -0400 +++ 11.22-1/FreeFileSync/Source/ui/small_dlgs.cpp 2022-06-26 16:03:52.123298767 -0400 @@ -140,9 +140,9 @@ wxImage::AddHandler(new wxJPEGHandler /*ownership passed*/); //activate support for .jpg files - wxImage animalImg(utfTo(appendPath(getResourceDirPath(), Zstr("Animal.dat"))), wxBITMAP_TYPE_JPEG); - convertToVanillaImage(animalImg); - assert(animalImg.IsOk()); + //wxImage animalImg(utfTo(appendPath(getResourceDirPath(), Zstr("Animal.dat"))), wxBITMAP_TYPE_JPEG); + //convertToVanillaImage(animalImg); + //assert(animalImg.IsOk()); //-------------------------------------------------------------------------- //have animal + text match *final* dialog width @@ -152,7 +152,7 @@ const int imageWidth = (m_panelDonate->GetSize().GetWidth() - 5 - 5 /* grey border*/) / 2; const int textWidth = m_panelDonate->GetSize().GetWidth() - 5 - 5 - imageWidth; - setImage(*m_bitmapAnimalSmall, shrinkImage(animalImg, imageWidth, -1 /*maxHeight*/)); + //setImage(*m_bitmapAnimalSmall, shrinkImage(animalImg, imageWidth, -1 /*maxHeight*/)); m_staticTextDonate->Show(); m_staticTextDonate->Wrap(textWidth - 10 /*left gap*/); //wrap *after* changing font size