Opened 2 years ago

Last modified 2 years ago

#66039 assigned defect

lzma not building on macOS 12 when targeting 10.12

Reported by: lukaso (Lukas Oberhuber) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: lzma

Description

This appears to be because utimensat is not available on MacOS from 10.12 and lower (cf https://github.com/bytecodealliance/rustix/pull/275#issue-1199295348).

--->  Computing dependencies for lzma.
--->  Fetching distfiles for lzma
--->  lzma2201.7z does not exist in /opt/local/var/macports/distfiles/lzma
--->  Attempting to fetch lzma2201.7z from https://distfiles.macports.org/lzma
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1231k  100 1231k    0     0  19.7M      0 --:--:-- --:--:-- --:--:-- 20.0M
--->  Verifying checksums for lzma
--->  Checksumming lzma2201.7z
--->  Extracting lzma
--->  Extracting lzma2201.7z
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201" && /opt/local/bin/7za x '/opt/local/var/macports/distfiles/lzma/lzma2201.7z' 

7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=utf8,Utf16=on,HugeFiles=on,64 bits,4 CPUs x64)

Scanning the drive for archives:
1 file, 1261282 bytes (1232 KiB)

Extracting archive: /opt/local/var/macports/distfiles/lzma/lzma2201.7z
--
Path = /opt/local/var/macports/distfiles/lzma/lzma2201.7z
Type = 7z
Physical Size = 1261282
Headers Size = 11755
Method = LZMA:22 BCJ2
Solid = +
Blocks = 3

Everything is Ok

Files: 693
Size:       5921595
Compressed: 1261282
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objc
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objc/usr
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objc/usr/bin
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objcxx
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objcxx/usr
xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objcxx/usr/bin
--->  Applying patches to lzma
--->  Applying patch-7zip_gcc_mak.diff
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201" && /usr/bin/patch -p0 < '/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/archivers/lzma/files/patch-7zip_gcc_mak.diff'
patching file CPP/7zip/7zip_gcc.mak
--->  Applying patch-lzma.1
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201" && /usr/bin/patch -p0 < '/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/archivers/lzma/files/patch-lzma.1'
patching file lzma.1
--->  Patching FileStreams.cpp: s|#include <sys/sysmacros.h>|//#include <sys/sysmacros.h>|
--->  Patching UpdateCallback.cpp: s|#include <sys/sysmacros.h>|//#include <sys/sysmacros.h>|
--->  Patching 7zip_gcc_c.mak: s|LDFLAGS = $(LDFLAGS_STATIC)|LDFLAGS += $(LDFLAGS_STATIC)|
--->  Patching 7zip_gcc.mak: s|LDFLAGS = $(LDFLAGS_STATIC)|LDFLAGS += $(LDFLAGS_STATIC)|
--->  Patching 7zip_gcc_c.mak: s|LFLAGS_ALL = -s|LFLAGS_ALL =|
--->  Patching 7zip_gcc.mak: s|LFLAGS_ALL = -s|LFLAGS_ALL =|
--->  Configuring lzma
--->  Building lzma
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201/CPP/7zip/Bundles/LzmaCon" && /usr/bin/gnumake -j4 -w all -f makefile.gcc CC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang" CXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++" OBJC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objc/usr/bin/clang" OBJCXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objcxx/usr/bin/clang++" INSTALL="/usr/bin/install -c" 
gnumake: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201/CPP/7zip/Bundles/LzmaCon'
mkdir -p _o
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/7zCrc.o ../../../../C/7zCrc.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/7zCrcOpt.o ../../../../C/7zCrcOpt.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/Alloc.o ../../../../C/Alloc.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/Bra86.o ../../../../C/Bra86.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/CpuArch.o ../../../../C/CpuArch.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/LzFind.o ../../../../C/LzFind.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/LzmaDec.o ../../../../C/LzmaDec.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/LzmaEnc.o ../../../../C/LzmaEnc.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/Lzma86Dec.o ../../../../C/Lzma86Dec.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/Lzma86Enc.o ../../../../C/Lzma86Enc.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/LzFindMt.o ../../../../C/LzFindMt.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/LzFindOpt.o ../../../../C/LzFindOpt.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC   -o _o/Synchronization.o  ../../../Windows/Synchronization.cpp
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -o _o/Threads.o ../../../../C/Threads.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC   -o _o/FileDir.o  ../../../Windows/FileDir.cpp
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC   -o _o/FileFind.o  ../../../Windows/FileFind.cpp
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++     -O2 -c -Wall -Wextra  -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC   -o _o/FileName.o  ../../../Windows/FileName.cpp
../../../Windows/FileDir.cpp:1010:10: error: use of undeclared identifier 'utimensat'
  return utimensat(AT_FDCWD, path, times, flags) == 0;
         ^
1 error generated.
gnumake: *** [_o/FileDir.o] Error 1
gnumake: *** Waiting for unfinished jobs....
gnumake: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201/CPP/7zip/Bundles/LzmaCon'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/lzma2201/CPP/7zip/Bundles/LzmaCon" && /usr/bin/gnumake -j4 -w all -f makefile.gcc CC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cc/usr/bin/clang" CXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/cxx/usr/bin/clang++" OBJC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objc/usr/bin/clang" OBJCXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/work/compwrap/objcxx/usr/bin/clang++" INSTALL="/usr/bin/install -c" 
Exit code: 2
Error: Failed to build lzma: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_lzma/lzma/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.

Exited with code exit status 1

Attachments (1)

main.log (30.8 KB) - added by lukaso (Lukas Oberhuber) 2 years ago.
Log of failure

Download all attachments as: .zip

Change History (7)

comment:1 Changed 2 years ago by lukaso (Lukas Oberhuber)

Though this doesn't explain why this fix: https://github.com/macports/macports-ports/commit/0f9e52bfe558b36b1d0d55782d45d45562d2c15f is not working...

Version 0, edited 2 years ago by lukaso (Lukas Oberhuber) (next)

comment:2 Changed 2 years ago by jmroot (Joshua Root)

Owner: set to ryandesign
Port: lzma added
Status: newassigned

comment:3 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Please attach the main.log file. We have successful builds of this port on all systems on our automated build system so I'll need to see what's different about your system in your log.

Changed 2 years ago by lukaso (Lukas Oberhuber)

Attachment: main.log added

Log of failure

comment:4 Changed 2 years ago by jmroot (Joshua Root)

Summary: lzma not buildinglzma not building on macOS 12 when targeting 10.12

legacysupport.newest_darwin_requires_legacy appears to only be compared against the current OS version; legacysupport doesn't have support for using older deployment targets and SDKs.

comment:5 Changed 2 years ago by kencu (Ken)

having legacysupport be able to target systems older than the one it is building on would be desirable.

but in practice there are lots of conflicts and questions that crop up, and we have not worked these through yet to a solution.

I guess we could start by making a list of what the issues are that need reviwing…

comment:6 Changed 2 years ago by lukaso (Lukas Oberhuber)

It would be really helpful in order to use this for packaging of apps, which is my use case (GIMP). In this case I've dodged the problem by not needing the package anymore (poppler not requiring boost so not requiring lzma).

What would it take to hack a change to legacysupport to make it work? I can't tell from the code where that would happen. Installing the legacy-support port was definitely not enough (not sure that's even what is expected here).

Note: See TracTickets for help on using tickets.