2021-02-11 08:51:49 +01:00
|
|
|
{ lib, appleDerivation, xcbuildHook, zlib, bzip2, xz, ncurses, libutil, Libinfo }:
|
2016-11-24 07:43:37 +01:00
|
|
|
|
2019-08-13 23:52:01 +02:00
|
|
|
appleDerivation {
|
2018-07-07 00:53:50 +02:00
|
|
|
nativeBuildInputs = [ xcbuildHook ];
|
2021-02-11 08:51:49 +01:00
|
|
|
buildInputs = [ zlib bzip2 xz ncurses libutil Libinfo ];
|
2016-11-24 07:43:37 +01:00
|
|
|
|
|
|
|
# some commands not working:
|
|
|
|
# mtree: _simple.h not found
|
|
|
|
# ipcs: sys/ipcs.h not found
|
|
|
|
# so remove their targets from the project
|
|
|
|
patchPhase = ''
|
|
|
|
substituteInPlace file_cmds.xcodeproj/project.pbxproj \
|
|
|
|
--replace "FC8A8CAA14B655FD001B97AD /* PBXTargetDependency */," "" \
|
|
|
|
--replace "FC8A8C9C14B655FD001B97AD /* PBXTargetDependency */," "" \
|
2017-10-12 03:31:59 +02:00
|
|
|
--replace "productName = file_cmds;" "" \
|
|
|
|
--replace '/usr/lib/libcurses.dylib' 'libncurses.dylib'
|
2016-11-24 07:43:37 +01:00
|
|
|
sed -i -re "s/name = ([a-zA-Z]+);/name = \1; productName = \1;/" file_cmds.xcodeproj/project.pbxproj
|
|
|
|
'';
|
|
|
|
|
2022-06-05 15:03:04 +02:00
|
|
|
# Workaround build failure on -fno-common toolchains:
|
|
|
|
# duplicate symbol '_chdname' in: ar_io.o tty_subs.o
|
|
|
|
NIX_CFLAGS_COMPILE = "-fcommon";
|
|
|
|
|
2016-11-24 07:43:37 +01:00
|
|
|
# temporary install phase until xcodebuild has "install" support
|
|
|
|
installPhase = ''
|
2018-12-30 06:58:10 +01:00
|
|
|
for f in Products/Release/*; do
|
|
|
|
if [ -f $f ]; then
|
2019-01-07 05:31:21 +01:00
|
|
|
install -D $f $out/bin/$(basename $f)
|
|
|
|
fi
|
2018-12-30 06:58:10 +01:00
|
|
|
done
|
2016-11-24 07:43:37 +01:00
|
|
|
|
|
|
|
for n in 1; do
|
|
|
|
mkdir -p $out/share/man/man$n
|
|
|
|
install */*.$n $out/share/man/man$n
|
|
|
|
done
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
2021-01-15 15:45:37 +01:00
|
|
|
platforms = lib.platforms.darwin;
|
|
|
|
maintainers = with lib.maintainers; [ matthewbauer ];
|
2016-11-24 07:43:37 +01:00
|
|
|
};
|
|
|
|
}
|