redox/mk/config.mk

48 lines
1.2 KiB
Makefile
Raw Normal View History

2017-01-05 22:07:20 +01:00
# Configuration
ARCH?=x86_64
2017-02-01 22:15:48 +01:00
# Per host variables
UNAME := $(shell uname)
ifeq ($(UNAME),Darwin)
ECHO=/bin/echo
FUMOUNT=sudo umount
export LD=$(ARCH)-elf-ld
export LDFLAGS=--gc-sections
export NPROC=sysctl -n hw.ncpu
export STRIP=$(ARCH)-elf-strip
VB_AUDIO=coreaudio
VBM="/Applications/VirtualBox.app/Contents/MacOS/VBoxManage"
else
ECHO=echo
FUMOUNT=fusermount -u
export LD=ld
export LDFLAGS=--gc-sections
export NPROC=nproc
export STRIP=strip
VB_AUDIO="pulse"
VBM=VBoxManage
endif
2017-01-05 22:07:20 +01:00
# Automatic variables
ROOT=$(PWD)
2017-01-16 18:10:56 +01:00
export RUST_TARGET_PATH=$(ROOT)/kernel/targets
2017-01-05 22:07:20 +01:00
export CC=$(ROOT)/libc-artifacts/gcc.sh
export CFLAGS=-fno-stack-protector -U_FORTIFY_SOURCE
# Kernel variables
KTARGET=$(ARCH)-unknown-none
KBUILD=build/kernel
KRUSTC=./krustc.sh
KRUSTDOC=./krustdoc.sh
2017-02-05 00:13:44 +01:00
KCARGO=RUSTC="$(KRUSTC)" RUSTDOC="$(KRUSTDOC)" CARGO_INCREMENTAL=1 cargo
2017-01-05 22:07:20 +01:00
KCARGOFLAGS=--target $(KTARGET) --release -- -C soft-float
# Userspace variables
export TARGET=$(ARCH)-unknown-redox
BUILD=build/userspace
export INITFS_FOLDER=$(ROOT)/initfs
2017-01-05 22:07:20 +01:00
RUSTC=./rustc.sh
RUSTDOC=./rustdoc.sh
2017-02-05 00:13:44 +01:00
CARGO=RUSTC="$(RUSTC)" RUSTDOC="$(RUSTDOC)" CARGO_INCREMENTAL=1 cargo
2017-02-01 22:15:48 +01:00
CARGOFLAGS=--target $(TARGET) --release -- -C codegen-units=`$(NPROC)`