mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-26 01:20:25 +00:00
3f29a12d90
This makes it more straightforward to build a cross-compiler toolchain. Also move math stuff from LibC to LibM.
32 lines
753 B
Makefile
32 lines
753 B
Makefile
OBJS = math.o
|
|
|
|
LIBRARY = libm.a
|
|
STANDARD_FLAGS = -std=c++17
|
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
|
OPTIMIZATION_FLAGS = -Os
|
|
INCLUDE_FLAGS = -I.. -I.
|
|
|
|
DEFINES = -DSERENITY -DUSERLAND -DSANITIZE_PTRS
|
|
|
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
|
CXX = i686-pc-serenity-g++
|
|
LD = i686-pc-serenity-ld
|
|
AR = i686-pc-serenity-ar
|
|
|
|
all: $(LIBRARY)
|
|
|
|
$(LIBRARY): $(OBJS)
|
|
@echo "LIB $@"; $(AR) rcs $@ $(OBJS)
|
|
|
|
.cpp.o:
|
|
@echo "CXX $<"; $(CXX) $(CXXFLAGS) -o $@ -c $<
|
|
|
|
%.no: %.asm
|
|
@echo "NASM $@"; nasm -f elf -o $@ $<
|
|
|
|
-include $(OBJS:%.o=%.d)
|
|
|
|
clean:
|
|
@echo "CLEAN"; rm -f $(LIBRARY) $(OBJS) *.d
|
|
|