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