1 # 2 # This file and its contents are supplied under the terms of the 3 # Common Development and Distribution License ("CDDL"), version 1.0. 4 # You may only use this file in accordance with the terms of version 5 # 1.0 of the CDDL. 6 # 7 # A full copy of the text of the CDDL should have accompanied this 8 # source. A copy of the CDDL is also available via the Internet at 9 # http://www.illumos.org/license/CDDL. 10 # 11 12 # 13 # Copyright 2016 Toomas Soome <tsoome@me.com> 14 # Copyright 2016 RackTop Systems. 15 # 16 17 include $(SRC)/Makefile.master 18 19 AS= $(GNU_ROOT)/bin/gas 20 LD= $(GNU_ROOT)/bin/gld 21 CC= $(GCC_ROOT)/bin/gcc 22 23 LIBRARY= libstand.a 24 25 all install: $(LIBRARY) 26 27 LIB_BASE= $(SRC)/boot/lib 28 LIBSTAND_SRC= $(LIB_BASE)/libstand 29 30 CPPFLAGS = -nostdinc -I../../../../include -I${LIBSTAND_SRC} -I../../.. 31 CPPFLAGS += -I../../../sys -I. 32 33 CFLAGS = -O2 -ffreestanding -Wformat 34 CFLAGS += -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float 35 CFLAGS += -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int \ 36 -Wno-unused-const-variable -Wno-tautological-compare \ 37 -Wno-unused-value -Wno-parentheses-equality \ 38 -Wno-unused-function -Wno-enum-conversion -Wno-switch \ 39 -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parentheses 40 41 include ${LIBSTAND_SRC}/Makefile.inc 42 43 $(LIBRARY): $(SRCS) $(OBJS) 44 $(AR) $(ARFLAGS) $@ $(OBJS) 45 46 clean: clobber 47 clobber: 48 $(RM) $(CLEANFILES) $(OBJS) machine x86 libstand.a 49 50 machine: 51 $(RM) machine 52 $(SYMLINK) ../../../$(MACHINE)/include machine 53 54 x86: 55 $(RM) x86 56 $(SYMLINK) ../../../x86/include x86 57 58 $(OBJS): machine x86 59 60 %.o: $(LIBSTAND_SRC)/%.c 61 $(COMPILE.c) $< 62 63 %.o: $(LIB_BASE)/libc/net/%.c 64 $(COMPILE.c) $< 65 66 %.o: $(LIB_BASE)/libc/string/%.c 67 $(COMPILE.c) $< 68 69 %.o: $(LIB_BASE)/libc/uuid/%.c 70 $(COMPILE.c) $< 71 72 %.o: $(LIB_BASE)/libz/%.c 73 $(COMPILE.c) $<