Compare commits

...

30 Commits

Author SHA1 Message Date
4lDO2
d173ccf8fc
Merge branch 'master' into io_uring 2021-06-21 09:38:42 +02:00
Jeremy Soller
c29329310c Merge branch 'fix_build_deps' into 'master'
Add missing build package

See merge request redox-os/redox!1261
2021-06-20 12:47:42 +00:00
InfRandomness
8cf7a25a9f
Merge branch 'master' of https://gitlab.redox-os.org/redox-os/redox into fix_build_deps 2021-06-20 13:34:19 +02:00
Jeremy Soller
b35a91576d
Workarounds for compilation issues 2021-06-18 13:54:40 -06:00
Jeremy Soller
848c3f9ec1
Fix incorrect path when copying from rust install to relibc install 2021-06-18 13:44:00 -06:00
4lDO2
690e4a7b7e Merge branch 'update-toolchain' into 'master'
Update toolchain to nightly-2021-06-15

See merge request redox-os/redox!1262
2021-06-18 15:24:16 +00:00
4lDO2
b0365d4ed3
Update Rust branch. 2021-06-18 17:22:48 +02:00
4lDO2
6a2e05a42e
Update submodules. 2021-06-18 17:19:57 +02:00
4lDO2
3e447e27ae
Update submodules adapted to the new toolchain. 2021-06-18 09:28:39 +02:00
4lDO2
97cab676c1
Update toolchain to nightly-2021-06-15. 2021-06-18 09:28:35 +02:00
InfRandomness
0dbd0ee4d6
Add missing solus packages 2021-06-14 18:00:59 +02:00
InfRandomness
ae78a96ddf
Add missing fedora packages 2021-06-14 02:40:07 +02:00
InfRandomness
dcd2b348c2
Add missing suse packages 2021-06-13 21:46:35 +02:00
Jeremy Soller
901108353f
Update submodules 2021-05-10 11:34:32 -06:00
Jeremy Soller
ef39bf42cd
Update cookbook 2021-05-10 09:45:01 -06:00
Jeremy Soller
e047a07cab
Update kernel and cookbook 2021-05-09 19:51:27 -06:00
Jeremy Soller
87467401fa
Update all submodules 2021-05-06 13:36:21 -06:00
Jeremy Soller
d55ed885ad
Update kernel 2021-05-06 13:25:52 -06:00
Jeremy Soller
5efd463c73
Update kernel 2021-05-06 12:38:37 -06:00
Jeremy Soller
22a2b49a26
Add acpid userspace driver 2021-05-06 12:37:55 -06:00
Jeremy Soller
c51b164549
Update cookbook 2021-05-04 12:59:47 -06:00
Jeremy Soller
aad25f5f7c
Update kernel 2021-05-04 08:33:30 -06:00
Jeremy Soller
a38bcdd20b
Update kernel 2021-04-13 19:36:18 -06:00
Jeremy Soller
bfcff323aa
Update cookbook 2021-04-06 13:32:44 -06:00
Jeremy Soller
e656b2930a
Update cookbook 2021-04-06 13:22:56 -06:00
Jeremy Soller
473d68255b
Update relibc 2021-04-06 13:05:27 -06:00
Jeremy Soller
071143e78b
Update kernel 2021-03-24 14:34:20 -06:00
Jeremy Soller
4cb1a67337
Update bootloader-efi 2021-03-17 08:30:56 -06:00
Jeremy Soller
e10a7adf18
Update kernel 2021-03-16 21:56:24 -06:00
Jeremy Soller
20b15789bc
Update relibc 2021-03-16 21:47:16 -06:00
17 changed files with 32 additions and 26 deletions

2
.gitmodules vendored
View File

@ -25,7 +25,7 @@
[submodule "rust"] [submodule "rust"]
path = rust path = rust
url = https://gitlab.redox-os.org/redox-os/rust.git url = https://gitlab.redox-os.org/redox-os/rust.git
branch = redox-2020-07-27 branch = redox-2021-06-15
[submodule "redoxfs"] [submodule "redoxfs"]
path = redoxfs path = redoxfs
url = https://gitlab.redox-os.org/redox-os/redoxfs.git url = https://gitlab.redox-os.org/redox-os/redoxfs.git

@ -1 +1 @@
Subproject commit 1d201c4435ebad73e0248d02c8b254783b75eca5 Subproject commit c96eb83d18ba15e758d896bfba3c35700416f669

@ -1 +1 @@
Subproject commit e147b413eeb9eb7d01c85cfe1b6b6eea39c47a57 Subproject commit d9f268facae3c2161da186c8a3d31f0ce9e37833

View File

@ -286,7 +286,7 @@ fedora()
fi fi
fi fi
# Use rpm -q <package> to check if it's already installed # Use rpm -q <package> to check if it's already installed
PKGS=$(for pkg in gcc gcc-c++ glibc-devel.i686 nasm make fuse-devel cmake texinfo gettext-devel bison flex perl-HTML-Parser po4a; do rpm -q $pkg > /dev/null || echo $pkg; done) PKGS=$(for pkg in gcc gcc-c++ glibc-devel.i686 nasm make fuse-devel cmake texinfo gettext-devel bison flex perl-HTML-Parser po4a openssl patch automake libtool perl-Pod-Html perl-FindBin gperf libpng-devel; do rpm -q $pkg > /dev/null || echo $pkg; done)
# If the list of packages is not empty, install missing # If the list of packages is not empty, install missing
COUNT=$(echo $PKGS | wc -w) COUNT=$(echo $PKGS | wc -w)
if [ $COUNT -ne 0 ]; then if [ $COUNT -ne 0 ]; then
@ -324,7 +324,7 @@ suse()
fi fi
fi fi
echo "Installing necessary build tools..." echo "Installing necessary build tools..."
sudo zypper install gcc gcc-c++ glibc-devel-32bit nasm make fuse-devel cmake sudo zypper install gcc gcc-c++ glibc-devel-32bit nasm make fuse-devel cmake openssl automake gettext-tools libtool po4a patch flex gperf
} }
############################################################################## ##############################################################################
@ -389,7 +389,7 @@ solus()
echo "Installing necessary build tools..." echo "Installing necessary build tools..."
#if guards are not necessary with eopkg since it does nothing if latest version is already installed #if guards are not necessary with eopkg since it does nothing if latest version is already installed
sudo eopkg it fuse-devel git gcc g++ libgcc-32bit libstdc++-32bit nasm make cmake sudo eopkg it fuse-devel git gcc g++ libgcc-32bit libstdc++-32bit nasm make cmake binutils-gold glibc-devel pkg-config fuse2-devel linux-headers rsync automake autoconf m4 libtool-devel po4a patch bison flex gperf libpng-devel perl-html-parser
} }
###################################################################### ######################################################################

@ -1 +1 @@
Subproject commit 86ed70defdc02734d3627782dd88f169bb240508 Subproject commit 6e25f3485bdc4e3f3a62f83c6eaec5ac3ef25cab

View File

@ -28,6 +28,7 @@ vesad T T G
stdio display:1 stdio display:1
ps2d us ps2d us
ramfs logging ramfs logging
acpid
# %NOFORK will prevent init from waiting forever for the process to fork, if it's not going to do that. # %NOFORK will prevent init from waiting forever for the process to fork, if it's not going to do that.
%NOFORK pcid --config=/etc/pcid/initfs.toml %NOFORK pcid --config=/etc/pcid/initfs.toml

View File

@ -28,6 +28,7 @@ vesad T T G
stdio display:1 stdio display:1
ps2d us ps2d us
ramfs logging ramfs logging
acpid
pcid /etc/pcid/initfs.toml pcid /etc/pcid/initfs.toml
redoxfs disk/live: file redoxfs disk/live: file
cd file: cd file:

View File

@ -28,6 +28,7 @@ vesad T T G
stdio display:1 stdio display:1
ps2d us ps2d us
ramfs logging ramfs logging
acpid
pcid /etc/pcid/initfs.toml pcid /etc/pcid/initfs.toml
redoxfs disk/live: file redoxfs disk/live: file
cd file: cd file:

@ -1 +1 @@
Subproject commit 150d65c31ba05c829ba239a3febe1e44b6e512e8 Subproject commit 70a2dc7532111a9df436cf17d3e7a6fdbdacee72

2
kernel

@ -1 +1 @@
Subproject commit 2776b05d1965e90975ed4bcc0b4d15ce270090f4 Subproject commit 34a3aa23ca4103e5363dcc9199d447a70a2a63ab

View File

@ -19,6 +19,7 @@ ifeq ($(UNAME),Darwin)
PREFIX_BINARY=0 PREFIX_BINARY=0
VB_AUDIO=coreaudio VB_AUDIO=coreaudio
VBM=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage VBM=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage
HOST_TARGET ?= $(ARCH)-apple-darwin
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
@ -26,12 +27,14 @@ else ifeq ($(UNAME),FreeBSD)
PREFIX_BINARY=0 PREFIX_BINARY=0
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 ?= $(ARCH)-unknown-freebsd
else else
FUMOUNT=fusermount -u FUMOUNT=fusermount -u
export NPROC=nproc export NPROC=nproc
export REDOX_MAKE=make export REDOX_MAKE=make
VB_AUDIO=pulse VB_AUDIO=pulse
VBM=VBoxManage VBM=VBoxManage
HOST_TARGET ?= $(ARCH)-unknown-linux-gnu
endif endif
# Automatic variables # Automatic variables
@ -41,7 +44,7 @@ export RUST_TARGET_PATH=$(ROOT)/kernel/targets
export XARGO_RUST_SRC=$(ROOT)/rust/src export XARGO_RUST_SRC=$(ROOT)/rust/src
## Kernel variables ## Kernel variables
KTARGET=$(ARCH)-unknown-none KTARGET=$(ARCH)-unknown-kernel
KBUILD=build/kernel KBUILD=build/kernel
## Userspace variables ## Userspace variables

View File

@ -12,8 +12,3 @@ CARGO_CONFIG_VERSION=0.1.1
ifeq ($(shell env -u RUSTUP_TOOLCHAIN cargo install --list | grep '^cargo-config v$(CARGO_CONFIG_VERSION):$$'),) ifeq ($(shell env -u RUSTUP_TOOLCHAIN cargo install --list | grep '^cargo-config v$(CARGO_CONFIG_VERSION):$$'),)
$(error cargo-config $(CARGO_CONFIG_VERSION) not found, run "cargo install --force --version $(CARGO_CONFIG_VERSION) cargo-config") $(error cargo-config $(CARGO_CONFIG_VERSION) not found, run "cargo install --force --version $(CARGO_CONFIG_VERSION) cargo-config")
endif endif
XARGO_VERSION=0.3.20
ifeq ($(shell env -u RUSTUP_TOOLCHAIN cargo install --list | grep '^xargo v$(XARGO_VERSION):$$'),)
$(error xargo $(XARGO_VERSION) not found, run "cargo install --force --version $(XARGO_VERSION) xargo")
endif

View File

@ -2,19 +2,19 @@ build/libkernel.a: kernel/Cargo.lock kernel/Cargo.toml kernel/src/* kernel/src/*
export PATH="$(PREFIX_PATH):$$PATH" && \ export PATH="$(PREFIX_PATH):$$PATH" && \
export INITFS_FOLDER=$(ROOT)/build/initfs && \ export INITFS_FOLDER=$(ROOT)/build/initfs && \
cd kernel && \ cd kernel && \
cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release -Z build-std=core,alloc -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@ cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@
build/libkernel_coreboot.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/* build/initfs_coreboot.tag build/libkernel_coreboot.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/* build/initfs_coreboot.tag
export PATH="$(PREFIX_PATH):$$PATH" && \ export PATH="$(PREFIX_PATH):$$PATH" && \
export INITFS_FOLDER=$(ROOT)/build/initfs_coreboot && \ export INITFS_FOLDER=$(ROOT)/build/initfs_coreboot && \
cd kernel && \ cd kernel && \
cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release --features live -Z build-std=core,alloc -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@ cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release --features live -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@
build/libkernel_live.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/* build/initfs_live.tag build/libkernel_live.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/* build/initfs_live.tag
export PATH="$(PREFIX_PATH):$$PATH" && \ export PATH="$(PREFIX_PATH):$$PATH" && \
export INITFS_FOLDER=$(ROOT)/build/initfs_live && \ export INITFS_FOLDER=$(ROOT)/build/initfs_live && \
cd kernel && \ cd kernel && \
cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release --features live -Z build-std=core,alloc -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@ cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release --features live -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@
build/kernel: kernel/linkers/$(ARCH).ld mk/kernel_ld.sh build/libkernel.a build/kernel: kernel/linkers/$(ARCH).ld mk/kernel_ld.sh build/libkernel.a
export PATH="$(PREFIX_PATH):$$PATH" && \ export PATH="$(PREFIX_PATH):$$PATH" && \

View File

@ -20,16 +20,18 @@ $(PREFIX)/relibc-install: $(ROOT)/relibc | $(PREFIX)/rust-install
cp -r "$(PREFIX)/rust-install" "$@.partial" cp -r "$(PREFIX)/rust-install" "$@.partial"
rm -rf "$@.partial/$(TARGET)/include/"* rm -rf "$@.partial/$(TARGET)/include/"*
cp -r "$(PREFIX)/rust-install/$(TARGET)/include/c++" "$@.partial/$(TARGET)/include/c++" cp -r "$(PREFIX)/rust-install/$(TARGET)/include/c++" "$@.partial/$(TARGET)/include/c++"
cp -r "$(PREFIX)/rust-install/lib/rustlib/$(HOST_TARGET)/lib/" "$@.partial/lib/rustlib/$(HOST_TARGET)/"
rm -rf $@.partial/lib/rustlib/src
mkdir $@.partial/lib/rustlib/src
ln -s $(ROOT)/rust $@.partial/lib/rustlib/src
cd "$<" && \ cd "$<" && \
export PATH="$(ROOT)/$@.partial/bin:$$PATH" && \ export PATH="$(ROOT)/$@.partial/bin:$$PATH" && \
export CARGO="env -u CARGO xargo" && \ export CARGO="env -u CARGO cargo" && \
$(MAKE) -j `$(NPROC)` all && \ $(MAKE) -j `$(NPROC)` all && \
$(MAKE) -j `$(NPROC)` install DESTDIR="$(ROOT)/$@.partial/$(TARGET)" $(MAKE) -j `$(NPROC)` install DESTDIR="$(ROOT)/$@.partial/$(TARGET)"
cd "$@.partial" && $(PREFIX_STRIP) cd "$@.partial" && $(PREFIX_STRIP)
touch "$@.partial" touch "$@.partial"
mv "$@.partial" "$@" mv "$@.partial" "$@"
mkdir $@/lib/rustlib/src
ln -s $(ROOT)/rust $@/lib/rustlib/src
$(PREFIX)/relibc-install.tar.gz: $(PREFIX)/relibc-install $(PREFIX)/relibc-install.tar.gz: $(PREFIX)/relibc-install
tar \ tar \
@ -43,7 +45,8 @@ ifeq ($(PREFIX_BINARY),1)
$(PREFIX)/rust-install.tar.gz: $(PREFIX)/rust-install.tar.gz:
mkdir -p "$(@D)" mkdir -p "$(@D)"
wget -O $@.partial "https://static.redox-os.org/toolchain/$(TARGET)/rust-install.tar.gz" #TODO: figure out why rust-install.tar.gz is missing /lib/rustlib/$(HOST_TARGET)/lib
wget -O $@.partial "https://static.redox-os.org/toolchain/$(TARGET)/relibc-install.tar.gz"
mv $@.partial $@ mv $@.partial $@
$(PREFIX)/rust-install: $(PREFIX)/rust-install.tar.gz $(PREFIX)/rust-install: $(PREFIX)/rust-install.tar.gz
@ -144,13 +147,15 @@ $(PREFIX)/rust-freestanding-install: $(ROOT)/rust | $(PREFIX)/binutils-install
cd "$@.partial" && $(PREFIX_STRIP) cd "$@.partial" && $(PREFIX_STRIP)
touch "$@.partial" touch "$@.partial"
mv "$@.partial" "$@" mv "$@.partial" "$@"
mkdir $@/lib/rustlib/src
ln -s $(ROOT)/rust $@/lib/rustlib/src
$(PREFIX)/relibc-freestanding-install: $(ROOT)/relibc | $(PREFIX_BASE_INSTALL) $(PREFIX_FREESTANDING_INSTALL) $(PREFIX)/relibc-freestanding-install: $(ROOT)/relibc | $(PREFIX_BASE_INSTALL) $(PREFIX_FREESTANDING_INSTALL)
rm -rf "$@.partial" "$@" rm -rf "$@.partial" "$@"
mkdir -p "$@.partial" mkdir -p "$@.partial"
cd "$<" && \ cd "$<" && \
export PATH="$(PREFIX_BASE_PATH):$(PREFIX_FREESTANDING_PATH):$$PATH" && \ export PATH="$(PREFIX_BASE_PATH):$(PREFIX_FREESTANDING_PATH):$$PATH" && \
export CARGO="env -u CARGO -u RUSTUP_TOOLCHAIN xargo" && \ export CARGO="env -u CARGO -u RUSTUP_TOOLCHAIN cargo" && \
export CC_$(subst -,_,$(TARGET))="$(TARGET)-gcc -isystem $(ROOT)/$@.partial/$(TARGET)/include" && \ export CC_$(subst -,_,$(TARGET))="$(TARGET)-gcc -isystem $(ROOT)/$@.partial/$(TARGET)/include" && \
$(MAKE) -j `$(NPROC)` all && \ $(MAKE) -j `$(NPROC)` all && \
$(MAKE) -j `$(NPROC)` install DESTDIR="$(ROOT)/$@.partial/$(TARGET)" $(MAKE) -j `$(NPROC)` install DESTDIR="$(ROOT)/$@.partial/$(TARGET)"

@ -1 +1 @@
Subproject commit f1b88c38c0a9b6bf9e24f82397a8a9505c9a2df2 Subproject commit 25be3a82bd881d6e778e72ed1451f2b2a10369a8

2
relibc

@ -1 +1 @@
Subproject commit 031194b999df38169ea2dacb6fa105a5e65bbb22 Subproject commit 98c60c357f8a4ff29c00334469efff56a22cf12c

2
rust

@ -1 +1 @@
Subproject commit fb4ac5ad6ecbde2d46c021b1c7efe55a049475c3 Subproject commit 81082578bfbcd2d366440185084204d8fb269977