<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/9f27a720c97524c199eb37a518722e58fbc46890">https://github.com/macports/macports-ports/commit/9f27a720c97524c199eb37a518722e58fbc46890</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 9f27a720c97 fpc: bugfix - extract bzip2 for systems <=10.8 - work around for codesign for systems <= 10.11 - add search path for qt4 - fix == vs eq - fix building cross-compilers and add all possible cpus - fix linker options - use os version properly.
</span>9f27a720c97 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 9f27a720c97524c199eb37a518722e58fbc46890
</span>Author: kamischi <karl-michael.schindler@web.de>
AuthorDate: Thu Aug 10 17:37:54 2023 +0200
<span style='display:block; white-space:pre;color:#404040;'> fpc: bugfix
</span><span style='display:block; white-space:pre;color:#404040;'> - extract bzip2 for systems <=10.8
</span><span style='display:block; white-space:pre;color:#404040;'> - work around for codesign for systems <= 10.11
</span><span style='display:block; white-space:pre;color:#404040;'> - add search path for qt4
</span><span style='display:block; white-space:pre;color:#404040;'> - fix == vs eq
</span><span style='display:block; white-space:pre;color:#404040;'> - fix building cross-compilers and add all possible cpus
</span><span style='display:block; white-space:pre;color:#404040;'> - fix linker options
</span><span style='display:block; white-space:pre;color:#404040;'> - use os version properly.
</span>---
lang/fpc/Portfile | 43 +++++++++++++++++++++++++++++++--------
lang/fpc/files/fpc.cfg.patch | 14 ++++++++++++-
lang/fpc/files/t_darwin.pas.patch | 32 +++++++++++++++++++++++++++++
3 files changed, 79 insertions(+), 10 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/fpc/Portfile b/lang/fpc/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 96d506f361c..935cb16d6dc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/fpc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/fpc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,6 +45,10 @@ universal_variant no
</span>
set fpcbasepath ${prefix}/libexec/${name}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.major} >= 13} { # Ventura, fix obsolete linker options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append t_darwin.pas.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> subport "chmcmd-${name}" {
revision 0
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -73,6 +77,9 @@ subport "chmcmd-${name}" {
</span> configure.pre_args
configure.args -r -v Makefile.fpc.fpcmake
configure.post_args
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-delete t_darwin.pas.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> build.env PREFIX=${prefix}
build.target
build.post_args-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -95,6 +102,7 @@ subport "${name}-cross" {
</span>
worksrcdir ${name}build-${version}/fpcsrc/compiler
use_configure no
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch.pre_args -p1
</span> build.args OPT="-ap -v0"
build.target aarch64 arm avr i386 i8086 jvm m68k mips mipsel powerpc powerpc64 sparc x86_64
switch ${build_arch} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -253,28 +261,35 @@ if {${subport} eq "${name}"} {
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # os.major = 20 is macOS = 11 (BigSur)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${os.major} >= 20} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set linkerOptions -XR${configure.sdkroot}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set linkerOptions ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} >= 11} { # Big Sur
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set otherOptions "-WM11.0 -XR${configure.sdkroot}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[vercmp ${os.version} 10.9] >= 0} { # Mavericks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set otherOptions "-WM10.9"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set otherOptions ""
</span> }
worksrcdir ${name}build-${version}/fpcsrc
build.env PP=${workpath}/${bootstrapCompiler} \
PREFIX=${destroot}${fpcbasepath}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- build.args OPT="-ap -v0 ${linkerOptions}" CPU_TARGET=${cpuTarget} UTILS=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args OPT="-v0 -ap ${otherOptions}" CPU_TARGET=${cpuTarget} UTILS=1
</span>
destroot.args {*}${build.args}
destroot.env {*}${build.env}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # codesign for older systems does not have a --remove-signature option
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # work around: replace codesign by a dummy.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${os.version} 10.11] <= 0} { # El Capitan
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args-append CODESIGN=/usr/bin/true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # build the compiler utilities msgdif and msg2inc
post-build {
system -W ${worksrcpath}/compiler/utils \
"../${compiler} -ap -v0 -Fu../../rtl/units/${cpuTarget}-darwin \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- -WM${macosx_deployment_target} ${linkerOptions} msgdif.pp && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${otherOptions} msgdif.pp && \
</span> ../${compiler} -ap -v0 -Fu../../rtl/units/${cpuTarget}-darwin \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- -WM${macosx_deployment_target} ${linkerOptions} msg2inc.pp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${otherOptions} msg2inc.pp"
</span> }
post-destroot {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -285,7 +300,7 @@ if {${subport} eq "${name}"} {
</span> system -W ${worksrcpath} \
"make utils_install FPC=${worksrcpath}/compiler/${compiler} \
PREFIX=${destroot}${fpcbasepath} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- OPT=\"-Furtl/units/${cpuTarget}-darwin -ap -v0 ${linkerOptions}\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OPT=\"-Furtl/units/${cpuTarget}-darwin -ap -v0 ${otherOptions}\""
</span> }
# generate a configuration file
xinstall -d ${destroot}${fpcbasepath}/etc
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -294,6 +309,16 @@ if {${subport} eq "${name}"} {
</span> ln -s ${fpcbasepath}/etc/fpc.cfg ${destroot}${prefix}/etc
system "patch ${destroot}${fpcbasepath}/etc/fpc.cfg ${filespath}/fpc.cfg.patch"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # remove the -WM option for older systems or update it as needed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${os.version} 10.7] < 0} { # Lion
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|-WM10.9||g" ${destroot}${fpcbasepath}/etc/fpc.cfg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {${os.major} >= 11} { # Big Sur
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|-WM10.9|-WM11.0|g" ${destroot}${fpcbasepath}/etc/fpc.cfg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set prefix of search path for qt4pas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|PREFIX|${prefix}|g" ${destroot}${fpcbasepath}/etc/fpc.cfg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # install man
xinstall -d ${destroot}${fpcbasepath}/man
foreach d {1 5} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/fpc/files/fpc.cfg.patch b/lang/fpc/files/fpc.cfg.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 14a6c68c77b..20185050799 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/fpc/files/fpc.cfg.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/fpc/files/fpc.cfg.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,12 +1,24 @@
</span> --- etc/fpc.cfg 2019-06-14 15:54:16.000000000 +0200
+++ fpc.cfg-new 2019-08-17 10:54:57.000000000 +0200
<span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -175,6 +175,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # searchpath for tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -FD/opt/local/libexec/fpc/lib/fpc/3.2.2/bin/$FPCTARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# searchpath for qt4pas framework
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#IFDEF Darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++-FfPREFIX/libexec/qt4/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ENDIF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # path to the gcclib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef cpui386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -Fl/Library/Developer/CommandLineTools/usr/lib/clang/14.0.3/lib/darwin
</span> @@ -267,6 +267,12 @@
-XX
#endif
+# Explicitly set minimum version of OS X
+# Avoids harmless but annoying ld warning
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+# Keep in sync with fpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Patch in sync with fpc and macOS
</span> +#ifdef darwin
+-WM10.9
+#endif
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/fpc/files/t_darwin.pas.patch b/lang/fpc/files/t_darwin.pas.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..052e0f4f75f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/fpc/files/t_darwin.pas.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,32 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- compiler/systems/t_darwin.pas.orig 2021-04-10 13:02:51
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ compiler/systems/t_darwin.pas 2023-10-10 11:43:18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -123,16 +123,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ programs with problems that require Valgrind will have more
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ than 60KB of data (first 4KB of address space is always invalid)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ExeCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $DYNLINK $STATIC $GCSECTIONS $STRIP $MAP $ORDERSYMS -multiply_defined suppress -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ExeCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $DYNLINK $STATIC $GCSECTIONS $STRIP $MAP $ORDERSYMS -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if not(cs_gdb_valgrind in current_settings.globalswitches) then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ExeCmd[1]:=ExeCmd[1]+' -pagezero_size 0x10000';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {$else ndef cpu64bitaddr}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ExeCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $DYNLINK $STATIC $GCSECTIONS $STRIP $MAP $ORDERSYMS -multiply_defined suppress -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ExeCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $DYNLINK $STATIC $GCSECTIONS $STRIP $MAP $ORDERSYMS -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {$endif ndef cpu64bitaddr}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (apptype<>app_bundle) then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- DllCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $GCSECTIONS $MAP $ORDERSYMS -dynamic -dylib -multiply_defined suppress -L. -o $EXE $CATRES $FILELIST'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ DllCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $GCSECTIONS $MAP $ORDERSYMS -dynamic -dylib -L. -o $EXE $CATRES $FILELIST'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- DllCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $GCSECTIONS $MAP $ORDERSYMS -dynamic -bundle -multiply_defined suppress -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ DllCmd[1]:='ld $PRTOBJ $TARGET $EMUL $OPT $GCSECTIONS $MAP $ORDERSYMS -dynamic -bundle -L. -o $EXE $CATRES $FILELIST';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DllCmd[2]:='strip -x $EXE';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DynamicLinker:='';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -360,7 +360,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if MacOSXVersionMin<>'' then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- LinkRes.Add('-macosx_version_min');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ LinkRes.Add('-macos_version_min');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LinkRes.Add(MacOSXVersionMin);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else if iPhoneOSVersionMin<>'' then
</span></pre><pre style='margin:0'>
</pre>