Fix missing ftruncate on MacOS

This commit is contained in:
Will Angenent 2023-04-02 11:09:43 +01:00
parent 9463599948
commit 09eca87a41
2 changed files with 6 additions and 3 deletions

View file

@ -33,6 +33,7 @@ ifeq ($(UNAME),Darwin)
VB_AUDIO=coreaudio VB_AUDIO=coreaudio
VBM=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage VBM=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage
HOST_TARGET ?= $(HOST_ARCH)-apple-darwin HOST_TARGET ?= $(HOST_ARCH)-apple-darwin
ALLOC_FILE=truncate -s "$(FILESYSTEM_SIZE)m"
else ifeq ($(UNAME),FreeBSD) else ifeq ($(UNAME),FreeBSD)
FUMOUNT=sudo umount FUMOUNT=sudo umount
export NPROC=sysctl -n hw.ncpu export NPROC=sysctl -n hw.ncpu
@ -41,6 +42,7 @@ else ifeq ($(UNAME),FreeBSD)
VB_AUDIO=pulse # To check, will probaly be OSS on most setups VB_AUDIO=pulse # To check, will probaly be OSS on most setups
VBM=VBoxManage VBM=VBoxManage
HOST_TARGET ?= $(HOST_ARCH)-unknown-freebsd HOST_TARGET ?= $(HOST_ARCH)-unknown-freebsd
ALLOC_FILE=fallocate --posix --length "$(FILESYSTEM_SIZE)MiB"
else else
# Detect which version of the fusermount binary is available. # Detect which version of the fusermount binary is available.
ifneq (, $(shell which fusermount3)) ifneq (, $(shell which fusermount3))
@ -54,6 +56,7 @@ else
VB_AUDIO=pulse VB_AUDIO=pulse
VBM=VBoxManage VBM=VBoxManage
HOST_TARGET ?= $(HOST_ARCH)-unknown-linux-gnu HOST_TARGET ?= $(HOST_ARCH)-unknown-linux-gnu
ALLOC_FILE=fallocate --posix --length "$(FILESYSTEM_SIZE)MiB"
endif endif
# Automatic variables # Automatic variables

View file

@ -2,7 +2,7 @@ $(BUILD)/harddrive.img: $(FSTOOLS_TAG) $(REPO_TAG)
mkdir -p $(BUILD) mkdir -p $(BUILD)
rm -rf $@ $@.partial rm -rf $@ $@.partial
-$(FUMOUNT) /tmp/redox_installer || true -$(FUMOUNT) /tmp/redox_installer || true
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial ${ALLOC_FILE} $@.partial
umask 002 && $(INSTALLER) -c $(FILESYSTEM_CONFIG) $@.partial umask 002 && $(INSTALLER) -c $(FILESYSTEM_CONFIG) $@.partial
mv $@.partial $@ mv $@.partial $@
@ -10,7 +10,7 @@ $(BUILD)/livedisk.iso: $(FSTOOLS_TAG) $(REPO_TAG)
mkdir -p $(BUILD) mkdir -p $(BUILD)
rm -rf $@ $@.partial rm -rf $@ $@.partial
-$(FUMOUNT) /tmp/redox_installer || true -$(FUMOUNT) /tmp/redox_installer || true
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial ${ALLOC_FILE} $@.partial
umask 002 && $(INSTALLER) -c $(FILESYSTEM_CONFIG) --live $@.partial umask 002 && $(INSTALLER) -c $(FILESYSTEM_CONFIG) --live $@.partial
mv $@.partial $@ mv $@.partial $@
@ -19,7 +19,7 @@ $(BUILD)/filesystem.img: $(FSTOOLS_TAG) $(REPO_TAG)
-$(FUMOUNT) $(BUILD)/filesystem/ || true -$(FUMOUNT) $(BUILD)/filesystem/ || true
rm -rf $@ $@.partial $(BUILD)/filesystem/ rm -rf $@ $@.partial $(BUILD)/filesystem/
-$(FUMOUNT) /tmp/redox_installer || true -$(FUMOUNT) /tmp/redox_installer || true
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial ${ALLOC_FILE} $@.partial
redoxfs/target/release/redoxfs-mkfs $(REDOXFS_MKFS_FLAGS) $@.partial redoxfs/target/release/redoxfs-mkfs $(REDOXFS_MKFS_FLAGS) $@.partial
mkdir -p $(BUILD)/filesystem/ mkdir -p $(BUILD)/filesystem/
redoxfs/target/release/redoxfs $@.partial $(BUILD)/filesystem/ redoxfs/target/release/redoxfs $@.partial $(BUILD)/filesystem/