1 # src/mapi/es1api/Makefile
4 include $(TOP
)/configs
/current
6 # this Makefile can build both OpenGL ES 1.1 and 2.0
11 GLES_PC
:= glesv1_cm.
pc
13 GLES_LIB
:= $(GLESv1_CM_LIB
)
14 GLES_LIB_NAME
:= $(GLESv1_CM_LIB_NAME
)
15 GLES_LIB_GLOB
:= $(GLESv1_CM_LIB_GLOB
)
16 GLES_LIB_DEPS
:= $(GLESv1_CM_LIB_DEPS
)
24 GLES_LIB
:= $(GLESv2_LIB
)
25 GLES_LIB_NAME
:= $(GLESv2_LIB_NAME
)
26 GLES_LIB_GLOB
:= $(GLESv2_LIB_GLOB
)
27 GLES_LIB_DEPS
:= $(GLESv2_LIB_DEPS
)
35 GLAPI
:= $(TOP
)/src
/mapi
/glapi
36 MAPI
:= $(TOP
)/src
/mapi
/mapi
37 # directory for generated sources/headers
40 include $(GLAPI
)/sources.mak
41 GLAPI_OBJECTS
:= $(GLAPI_SOURCES
:.c
=.o
)
42 GLAPI_SOURCES
:= $(addprefix $(GLAPI
)/, $(GLAPI_SOURCES
))
43 GLAPI_ASM_OBJECTS
:= $(GLAPI_ASM_SOURCES
:.S
=.o
)
44 GLAPI_ASM_SOURCES
:= $(addprefix $(GEN
)/, $(GLAPI_ASM_SOURCES
))
46 include $(MAPI
)/sources.mak
47 MAPI_GLAPI_OBJECTS
:= $(MAPI_GLAPI_SOURCES
:.c
=.o
)
48 MAPI_GLAPI_SOURCES
:= $(addprefix $(MAPI
)/, $(MAPI_GLAPI_SOURCES
))
50 ESAPI_OBJECTS
= $(GLAPI_OBJECTS
) $(GLAPI_ASM_OBJECTS
) $(MAPI_GLAPI_OBJECTS
)
54 -I
$(TOP
)/src
/mapi
/$(ESAPI
) \
59 default
: depend
$(TOP
)/$(LIB_DIR
)/$(GLES_LIB_NAME
)
61 $(TOP
)/$(LIB_DIR
)/$(GLES_LIB_NAME
): $(ESAPI_OBJECTS
)
62 $(MKLIB
) -o
$(GLES_LIB
) -linker
'$(CC)' -ldflags '$(LDFLAGS)' \
63 -major
$(GLES_LIB_MAJOR
) \
64 -minor
$(GLES_LIB_MINOR
) \
65 -patch
$(GLES_LIB_PATCH
) \
66 -id
$(INSTALL_LIB_DIR
)/lib
$(GLES_LIB
).
$(GLES_LIB_MAJOR
).dylib \
67 $(MKLIB_OPTIONS
) -install $(TOP
)/$(LIB_DIR
) \
68 $(ESAPI_OBJECTS
) $(GLES_LIB_DEPS
)
70 # not used, but kept for completeness
71 lib
$(ESAPI
).a
: $(ESAPI_OBJECTS
)
72 @
$(MKLIB
) -o
$(ESAPI
) -static
$(ESAPI_OBJECTS
)
74 $(GLAPI_OBJECTS
): %.o
: $(GLAPI
)/%.c
75 $(CC
) -c
$(INCLUDE_DIRS
) $(CFLAGS
) $< -o
$@
77 $(GLAPI_ASM_OBJECTS
): %.o
: $(GEN
)/%.S
78 $(CC
) -c
$(INCLUDE_DIRS
) $(CFLAGS
) $< -o
$@
80 $(MAPI_GLAPI_OBJECTS
): %.o
: $(MAPI
)/%.c
81 $(CC
) -c
$(INCLUDE_DIRS
) $(CFLAGS
) -DMAPI_GLAPI_CURRENT
$< -o
$@
83 $(GLAPI_SOURCES
) $(GLAPI_ASM_SOURCES
): | glapi-stamp
86 @
# generate sources/headers
87 @
$(MAKE
) -C
$(GLAPI
)/gen-es
$(ES
)
93 -rm -f
$(TOP
)/$(LIB_DIR
)/$(GLES_LIB_NAME
)
95 -rm -f
$(ESAPI_OBJECTS
)
96 -rm -f depend depend.bak
98 @
# clean generated sources/headers
99 @
$(MAKE
) -C
$(GLAPI
)/gen-es clean-
$(ES
)
102 -e
's,@INSTALL_DIR@,$(INSTALL_DIR),' \
103 -e
's,@INSTALL_LIB_DIR@,$(INSTALL_LIB_DIR),' \
104 -e
's,@INSTALL_INC_DIR@,$(INSTALL_INC_DIR),' \
105 -e
's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),' \
109 -e
's,@GLESv1_CM_PC_REQ_PRIV@,$(GLESv1_CM_PC_REQ_PRIV),' \
110 -e
's,@GLESv1_CM_PC_LIB_PRIV@,$(GLESv1_CM_PC_LIB_PRIV),' \
111 -e
's,@GLESv1_CM_PC_CFLAGS@,$(GLESv1_CM_PC_CFLAGS),' \
112 -e
's,@GLESv1_CM_LIB@,$(GLESv1_CM_LIB),'
116 -e
's,@GLESv2_PC_REQ_PRIV@,$(GLESv2_PC_REQ_PRIV),' \
117 -e
's,@GLESv2_PC_LIB_PRIV@,$(GLESv2_PC_LIB_PRIV),' \
118 -e
's,@GLESv2_PC_CFLAGS@,$(GLESv2_PC_CFLAGS),' \
119 -e
's,@GLESv2_LIB@,$(GLESv2_LIB),'
121 $(GLES_PC
): $(GLES_PC
).in
122 @sed
$(pcedit-
$(ES
)) $< > $@
125 $(INSTALL
) -d
$(DESTDIR
)$(INSTALL_INC_DIR
)/$(GLES_HEADER
)
126 $(INSTALL
) -m
644 $(TOP
)/include/$(GLES_HEADER
)/*.h \
127 $(DESTDIR
)$(INSTALL_INC_DIR
)/$(GLES_HEADER
)
129 install-pc
: $(GLES_PC
)
130 $(INSTALL
) -d
$(DESTDIR
)$(INSTALL_LIB_DIR
)/pkgconfig
131 $(INSTALL
) -m
644 $(GLES_PC
) $(DESTDIR
)$(INSTALL_LIB_DIR
)/pkgconfig
133 install: default install-headers install-pc
134 $(INSTALL
) -d
$(DESTDIR
)$(INSTALL_LIB_DIR
)
135 $(MINSTALL
) $(TOP
)/$(LIB_DIR
)/$(GLES_LIB_GLOB
) \
136 $(DESTDIR
)$(INSTALL_LIB_DIR
)
138 depend
: $(GLAPI_SOURCES
) $(MAPI_GLAPI_SOURCES
)
139 @echo
"running $(MKDEP)"
141 @
$(MKDEP
) $(MKDEP_OPTIONS
) -f-
$(DEFINES
) $(INCLUDE_DIRS
) \
142 -DMAPI_GLAPI_CURRENT
$(GLAPI_SOURCES
) $(MAPI_GLAPI_SOURCES
) \
143 2>/dev
/null | sed
-e
's,^$(GLAPI)/,,' -e
's,^$(MAPI)/,,' \