103 lines
2.5 KiB
Makefile
103 lines
2.5 KiB
Makefile
include hyperlinks.mk
|
|
|
|
all: fhs learn
|
|
|
|
fhs:
|
|
# Filesystem Hierarchy Standard 3.0, 2015
|
|
# https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.pdf
|
|
|
|
# section 3.2
|
|
mkdir -p "$(PREFIX)/bin"
|
|
mkdir -p "$(PREFIX)/boot"
|
|
mkdir -p "$(PREFIX)/dev"
|
|
mkdir -p "$(PREFIX)/etc"
|
|
mkdir -p "$(PREFIX)/lib"
|
|
mkdir -p "$(PREFIX)/media"
|
|
mkdir -p "$(PREFIX)/mnt"
|
|
mkdir -p "$(PREFIX)/opt"
|
|
mkdir -p "$(PREFIX)/run"
|
|
mkdir -p "$(PREFIX)/sbin"
|
|
mkdir -p "$(PREFIX)/srv"
|
|
mkdir -p "$(PREFIX)/tmp"
|
|
mkdir -p "$(PREFIX)/usr"
|
|
mkdir -p "$(PREFIX)/var"
|
|
|
|
# section 3.7.4
|
|
mkdir -p "$(PREFIX)/etc/opt"
|
|
|
|
# section 4.2
|
|
mkdir -p "$(PREFIX)/usr/bin"
|
|
mkdir -p "$(PREFIX)/usr/lib"
|
|
mkdir -p "$(PREFIX)/usr/local"
|
|
mkdir -p "$(PREFIX)/usr/sbin"
|
|
mkdir -p "$(PREFIX)/usr/share"
|
|
|
|
# section 4.3
|
|
mkdir -p "$(PREFIX)/usr/include"
|
|
mkdir -p "$(PREFIX)/var/spool"
|
|
mkdir -p "$(PREFIX)/var/tmp"
|
|
mkdir -p "$(PREFIX)/var/lock"
|
|
ln -s "$(PREFIX)/usr/spool" "$(PREFIX)/var/spool"
|
|
ln -s "$(PREFIX)/usr/tmp" "$(PREFIX)/var/tmp"
|
|
ln -s "$(PREFIX)/usr/spool/locks" "$(PREFIX)/var/lock"
|
|
|
|
# section 4.6
|
|
mkdir -p "$(PREFIX)/usr/lib"
|
|
|
|
# section 4.9
|
|
mkdir -p "$(PREFIX)/usr/local"
|
|
|
|
# section 4.9.2
|
|
mkdir -p "$(PREFIX)/usr/local/bin"
|
|
#mkdir -p "$(PREFIX)/usr/local/etc" # see section 4.9.3
|
|
mkdir -p "$(PREFIX)/usr/local/games"
|
|
mkdir -p "$(PREFIX)/usr/local/include"
|
|
mkdir -p "$(PREFIX)/usr/local/lib"
|
|
mkdir -p "$(PREFIX)/usr/local/man"
|
|
mkdir -p "$(PREFIX)/usr/local/sbin"
|
|
mkdir -p "$(PREFIX)/usr/local/share"
|
|
mkdir -p "$(PREFIX)/usr/local/src"
|
|
|
|
# section 4.9.3
|
|
ln -s "$(PREFIX)/usr/local/etc" "$(PREFIX)/etc/local"
|
|
|
|
# section 4.11.6
|
|
mkdir -p "$(PREFIX)/usr/share/man"
|
|
|
|
# section 4.11.7
|
|
mkdir -p "$(PREFIX)/usr/share/misc"
|
|
|
|
# section 4.12
|
|
mkdir -p "$(PREFIX)/usr/src"
|
|
|
|
# section 5.2
|
|
mkdir -p "$(PREFIX)/var/lib"
|
|
mkdir -p "$(PREFIX)/var/local"
|
|
mkdir -p "$(PREFIX)/var/log"
|
|
mkdir -p "$(PREFIX)/var/opt"
|
|
#mkdir -p "$(PREFIX)/var/run" # see section 5.13.2
|
|
|
|
# section 5.8.2
|
|
mkdir -p "$(PREFIX)/var/lib/misc"
|
|
|
|
# section 5.13.2
|
|
ln -s "$(PREFIX)/var/run" "$(PREFIX)/run"
|
|
|
|
# section 6.1.10
|
|
mkdir -p "$(PREFIX)/var/spool/cron"
|
|
|
|
$(PREFIX)/usr/src/linux: fhs
|
|
git clone "$(LINUX_UPSTREAM_GIT)" "$(PREFIX)/usr/src/linux.tmp"
|
|
mv "$(PREFIX)/usr/src/linux.tmp" "$(PREFIX)/usr/src/linux"
|
|
|
|
$(PREFIX)/usr/src/musl: fhs
|
|
git clone "$(MUSL_UPSTREAM_GIT)" "$(PREFIX)/usr/src/musl.tmp"
|
|
mv "$(PREFIX)/usr/src/musl.tmp" "$(PREFIX)/usr/src/musl"
|
|
|
|
musl: $(PREFIX)/usr/src/musl
|
|
cd "$(PREFIX)/usr/src/musl"
|
|
./configure --prefix="$(PREFIX)"
|
|
$(MAKE) install
|
|
|
|
.PHONY: all
|