summaryrefslogtreecommitdiff
path: root/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'makefile')
-rw-r--r--makefile17
1 files changed, 12 insertions, 5 deletions
diff --git a/makefile b/makefile
index 711bb03..c3f4ad3 100644
--- a/makefile
+++ b/makefile
@@ -7,7 +7,8 @@ EXTRA_CC_ARGS = -Wall -Wextra -Og -ggdb -fno-exceptions
HILBERT_NASM = nasm -f elf64
HILBERT_CC = ${TOOLCHAIN_DIR}/usr/bin/x86_64-elf-c++ -std=c++20 \
${EXTRA_CC_ARGS} -static -mno-sse -I include -I $(abspath euler/include) \
- -I $(abspath libraries/daguerre/include) -I ${MINTSUKI_HEADERS_DIR}
+ -I $(abspath libraries/daguerre/include) -I ${MINTSUKI_HEADERS_DIR} \
+ -I $(abspath libraries/goldman/include)
HILBERT_AR = ${TOOLCHAIN_DIR}/usr/bin/x86_64-elf-ar
HILBERT_LD = ${TOOLCHAIN_DIR}/usr/bin/x86_64-elf-ld -z noexecstack
@@ -25,8 +26,8 @@ LIBSTDCPP_DEP = toolchain/.libstdcpp-done
EULER_DEP = toolchain/.euler-done
DAGUERRE_DEP = toolchain/.daguerre-done
-APP_DEPS = ${GCC_DEP} ${LIBGCC_DEP} ${LIBSTDCPP_DEP} ${EULER_DEP}
-LIBRARY_DEPS = ${GCC_DEP} ${LIBSTDCPP_DEP}
+APP_DEPS = ${EULER_DEP}
+LIBRARY_DEPS = ${LIBSTDCPP_DEP}
.PHONY: default run clean clean-dependencies
@@ -41,6 +42,7 @@ clean:
make -C kernel clean
make -C applications/init clean
make -C applications/goldman clean
+ make -C applications/hello clean
make -C libraries/daguerre clean
clean-dependencies: clean
@@ -90,7 +92,7 @@ ${LIBGCC_DEP}: ${GCC_DEP}
+make -C dependencies/gcc/build install-target-libgcc
touch $@
-${LIBSTDCPP_DEP}: ${GCC_DEP}
+${LIBSTDCPP_DEP}: ${LIBGCC_DEP}
+make -C dependencies/gcc/build all-target-libstdc++-v3
+make -C dependencies/gcc/build install-target-libstdc++-v3
patch toolchain/usr/x86_64-elf/include/c++/14.1.0/memory patches/gcc-memory.patch
@@ -117,13 +119,18 @@ applications/init/build/init.elf: ${APP_DEPS}
applications/goldman/build/goldman.elf: ${APP_DEPS} ${DAGUERRE_DEP}
+make -C applications/goldman build/goldman.elf
+applications/hello/build/hello.elf: ${APP_DEPS} ${DAGUERRE_DEP}
+ +make -C applications/hello build/hello.elf
+
build/initfs.tgz: applications/init/build/init.elf \
- applications/goldman/build/goldman.elf
+ applications/goldman/build/goldman.elf \
+ applications/hello/build/hello.elf
@mkdir -p build
rm -rf build/initfs
cp -r skeleton build/initfs
cp applications/init/build/init.elf build/initfs/bin/init
cp applications/goldman/build/goldman.elf build/initfs/bin/goldman
+ cp applications/hello/build/hello.elf build/initfs/bin/hello
cd build/initfs && tar czf ../initfs.tgz .
build/disk.iso: kernel/build/kernel.elf build/initfs.tgz ${LIMINE_DEP}