Makefile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #
  2. # Makefile
  3. #
  4. # Copyright (C) 2016 Aleksandar Andrejevic <theflash@sdf.lonestar.org>
  5. #
  6. # This program is free software: you can redistribute it and/or modify
  7. # it under the terms of the GNU Affero General Public License as
  8. # published by the Free Software Foundation, either version 3 of the
  9. # License, or (at your option) any later version.
  10. #
  11. # This program is distributed in the hope that it will be useful,
  12. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. # GNU Affero General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU Affero General Public License
  17. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  18. #
  19. # Settings
  20. DEBUG := yes
  21. # Flags
  22. CFLAGS := -Wall -Werror -Wno-strict-aliasing -ffreestanding -nostdlib -I include -I .. -I ../crt/include
  23. ASMFLAGS := -felf
  24. LDFLAGS := -T link.ld -L ../crt -lmlcrt
  25. LINK_WITH_LIBGCC := yes
  26. # Input and output files
  27. SOURCES = $(wildcard $(SRCDIR)/*.c)
  28. SOURCES += $(wildcard $(SRCDIR)/memory/*.c)
  29. SOURCES += $(wildcard $(SRCDIR)/exec/*.c)
  30. SOURCES += $(wildcard $(SRCDIR)/*.asm)
  31. ADDITIONAL_OBJECTS := obj/boot/boot.o
  32. OUTPUT_KERNEL := monolithium
  33. -include ../common.mk