grub2: bring back build of aros-side grub2 tools
[AROS.git] / workbench / libs / mesa / src / gallium / Makefile.template
blob036c11986ee8c0880cea1fa03f381ebb9d312855
1 # src/gallium/Makefile.template
3 # Template makefile for gallium libraries.
5 # Usage:
6 #   The minimum that the including makefile needs to define
7 #   is TOP, LIBNAME and one of of the *_SOURCES.
9 # Optional defines:
10 #   LIBRARY_INCLUDES are appended to the list of includes directories.
11 #   LIBRARY_DEFINES is not used for makedepend, but for compilation.
13 ### Basic defines ###
15 OBJECTS = $(C_SOURCES:.c=.o) \
16         $(CPP_SOURCES:.cpp=.o) \
17         $(ASM_SOURCES:.S=.o)
19 INCLUDES = \
20         -I. \
21         -I$(TOP)/src/gallium/include \
22         -I$(TOP)/src/gallium/auxiliary \
23         -I$(TOP)/src/gallium/drivers \
24         $(LIBRARY_INCLUDES)
26 ifeq ($(MESA_LLVM),1)
27 LIBRARY_DEFINES += $(LLVM_CFLAGS)
28 endif
31 ##### TARGETS #####
33 default: depend lib$(LIBNAME).a $(PROGS)
35 lib$(LIBNAME).a: $(OBJECTS) $(EXTRA_OBJECTS) Makefile $(TOP)/src/gallium/Makefile.template
36         $(MKLIB) -o $(LIBNAME) -static $(OBJECTS) $(EXTRA_OBJECTS)
38 depend: $(C_SOURCES) $(CPP_SOURCES) $(ASM_SOURCES) $(SYMLINKS) $(GENERATED_SOURCES)
39         rm -f depend
40         touch depend
41         $(MKDEP) $(MKDEP_OPTIONS) $(INCLUDES) $(C_SOURCES) $(CPP_SOURCES) $(ASM_SOURCES) $(GENERATED_SOURCES) 2> /dev/null
43 $(PROGS): % : %.o $(PROGS_DEPS)
44         $(LD) $(LDFLAGS) $(filter %.o,$^) -o $@ -Wl,--start-group  $(LIBS) -Wl,--end-group
46 # Emacs tags
47 tags:
48         etags `find . -name \*.[ch]` `find $(TOP)/src/gallium/include -name \*.h`
50 # Remove .o and backup files
51 clean:
52         rm -f $(OBJECTS) $(GENERATED_SOURCES) $(PROGS) lib$(LIBNAME).a depend depend.bak $(CLEAN_EXTRA)
54 # Dummy target
55 install:
56         @echo -n ""
58 ##### RULES #####
60 %.s: %.c
61         $(CC) -S $(INCLUDES) $(CFLAGS) $(LIBRARY_DEFINES) $< -o $@
63 %.o: %.c
64         $(CC) -c $(INCLUDES) $(CFLAGS) $(LIBRARY_DEFINES) $< -o $@
66 %.o: %.cpp
67         $(CXX) -c $(INCLUDES) $(CXXFLAGS) $(LIBRARY_DEFINES) $< -o $@
69 %.o: %.S
70         $(CC) -c $(INCLUDES) $(CFLAGS) $(LIBRARY_DEFINES)  $< -o $@
73 sinclude depend