blob: 3834a5dbfa187bec47d4e433d2909edc13985472 [file] [log] [blame]
Brian Pauladbff7e2005-04-22 21:09:39 +00001# src/egl/main/Makefile
2
3TOP = ../../..
4include $(TOP)/configs/current
5
6
Chia-I Wud4c1ee02009-12-21 11:13:18 +08007EGL_MAJOR = 1
8EGL_MINOR = 0
9
Chia-I Wuda39d5d2010-06-17 16:07:46 +080010INCLUDE_DIRS = -I$(TOP)/include
Brian Pauladbff7e2005-04-22 21:09:39 +000011
12HEADERS = \
Chia-I Wu8e92ec92009-07-16 21:21:51 -070013 eglcompiler.h \
Brian Pauladbff7e2005-04-22 21:09:39 +000014 eglconfig.h \
Brian Paula772bbb2008-05-27 16:57:49 -060015 eglconfigutil.h \
Brian Pauladbff7e2005-04-22 21:09:39 +000016 eglcontext.h \
Chia-I Wu75da80b2009-07-17 11:41:02 -060017 eglcurrent.h \
Brian Paulcf3c7d72008-05-28 15:21:52 -060018 egldefines.h \
Brian Pauladbff7e2005-04-22 21:09:39 +000019 egldisplay.h \
20 egldriver.h \
21 eglglobals.h \
Chia-I Wua1c4a8a2009-08-15 22:58:13 +080022 eglimage.h \
Brian Paulf049ca42005-11-23 01:37:30 +000023 egllog.h \
Brian Paul11a261e2008-05-28 15:50:58 -060024 eglmisc.h \
Brian Pauladbff7e2005-04-22 21:09:39 +000025 eglmode.h \
Chia-I Wue79d21c2009-08-10 11:35:06 +080026 eglmutex.h \
Brian Pauladbff7e2005-04-22 21:09:39 +000027 eglscreen.h \
Brian Paule94d3832008-05-28 12:54:33 -060028 eglstring.h \
Chia-I Wu5a459d52009-08-21 13:53:36 +080029 eglsurface.h
Brian Pauladbff7e2005-04-22 21:09:39 +000030
31SOURCES = \
32 eglapi.c \
33 eglconfig.c \
Brian Paula772bbb2008-05-27 16:57:49 -060034 eglconfigutil.c \
Brian Pauladbff7e2005-04-22 21:09:39 +000035 eglcontext.c \
Chia-I Wu75da80b2009-07-17 11:41:02 -060036 eglcurrent.c \
Brian Pauladbff7e2005-04-22 21:09:39 +000037 egldisplay.c \
38 egldriver.c \
39 eglglobals.c \
Chia-I Wua1c4a8a2009-08-15 22:58:13 +080040 eglimage.c \
Brian Paulf049ca42005-11-23 01:37:30 +000041 egllog.c \
Brian Paul11a261e2008-05-28 15:50:58 -060042 eglmisc.c \
Brian Pauladbff7e2005-04-22 21:09:39 +000043 eglmode.c \
44 eglscreen.c \
Brian Paule94d3832008-05-28 12:54:33 -060045 eglstring.c \
Chia-I Wu5a459d52009-08-21 13:53:36 +080046 eglsurface.c
Brian Pauladbff7e2005-04-22 21:09:39 +000047
48OBJECTS = $(SOURCES:.c=.o)
49
50
Chia-I Wud4c1ee02009-12-21 11:13:18 +080051# use dl*() to load drivers
Chia-I Wu6f690ca2010-06-15 19:34:51 +080052LOCAL_CFLAGS = -D_EGL_OS_UNIX=1
Brian Paul6052af12008-05-27 16:48:23 -060053
Chia-I Wuf22665d2010-06-17 17:14:03 +080054# translate --with-egl-platforms to _EGLPlatformType
55EGL_NATIVE_PLATFORM=_EGL_INVALID_PLATFORM
56ifeq ($(firstword $(EGL_PLATFORMS)),x11)
57EGL_NATIVE_PLATFORM=_EGL_PLATFORM_X11
58endif
59ifeq ($(firstword $(EGL_PLATFORMS)),kms)
60EGL_NATIVE_PLATFORM=_EGL_PLATFORM_DRM
61endif
62ifeq ($(firstword $(EGL_PLATFORMS)),fbdev)
63EGL_NATIVE_PLATFORM=_EGL_PLATFORM_FBDEV
64endif
65
Chia-I Wub3bcd332010-01-19 18:13:50 +080066LOCAL_CFLAGS += \
Chia-I Wuf22665d2010-06-17 17:14:03 +080067 -D_EGL_NATIVE_PLATFORM=$(EGL_NATIVE_PLATFORM) \
Chia-I Wu28c3e572010-01-23 20:18:43 +080068 -D_EGL_DRIVER_SEARCH_DIR=\"$(EGL_DRIVER_INSTALL_DIR)\"
Brian Paul6052af12008-05-27 16:48:23 -060069
Brian Pauladbff7e2005-04-22 21:09:39 +000070.c.o:
Brian Paul6052af12008-05-27 16:48:23 -060071 $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $(LOCAL_CFLAGS) $< -o $@
Brian Pauladbff7e2005-04-22 21:09:39 +000072
73
74
75default: depend library
76
77
78# EGL Library
Chia-I Wud4c1ee02009-12-21 11:13:18 +080079library: $(TOP)/$(LIB_DIR)/$(EGL_LIB_NAME)
Brian Pauladbff7e2005-04-22 21:09:39 +000080
Chia-I Wud4c1ee02009-12-21 11:13:18 +080081$(TOP)/$(LIB_DIR)/$(EGL_LIB_NAME): $(OBJECTS)
82 $(MKLIB) -o $(EGL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
83 -major $(EGL_MAJOR) -minor $(EGL_MINOR) \
84 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
Brian Paulc34c78b2009-02-25 08:41:13 -070085 $(EGL_LIB_DEPS) $(OBJECTS)
Brian Pauladbff7e2005-04-22 21:09:39 +000086
Chia-I Wu3f932a42010-01-25 11:34:09 +080087install-headers:
88 $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/KHR
89 $(INSTALL) -m 644 $(TOP)/include/KHR/*.h \
90 $(DESTDIR)$(INSTALL_INC_DIR)/KHR
91 $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/EGL
92 $(INSTALL) -m 644 $(TOP)/include/EGL/*.h \
93 $(DESTDIR)$(INSTALL_INC_DIR)/EGL
94
Kristian Høgsbergceffd7b2010-03-10 16:47:36 -050095PKG_CONFIG_DIR = $(INSTALL_LIB_DIR)/pkgconfig
96
97gl_pcedit = sed \
98 -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
99 -e 's,@INSTALL_LIB_DIR@,$(INSTALL_LIB_DIR),' \
100 -e 's,@INSTALL_INC_DIR@,$(INSTALL_INC_DIR),' \
101 -e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),' \
102 -e 's,@EGL_PC_REQ_PRIV@,$(EGL_PC_REQ_PRIV),' \
103 -e 's,@EGL_PC_LIB_PRIV@,$(EGL_PC_LIB_PRIV),' \
104 -e 's,@EGL_PC_CFLAGS@,$(EGL_PC_CFLAGS),' \
105 -e 's,@EGL_LIB@,$(EGL_LIB),'
106
107egl.pc: egl.pc.in
108 $(gl_pcedit) $< > $@
109
110install: default install-headers egl.pc
Johannes Engel1e818552009-02-11 11:31:05 +0100111 $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800112 $(MINSTALL) $(TOP)/$(LIB_DIR)/$(EGL_LIB_GLOB) \
113 $(DESTDIR)$(INSTALL_LIB_DIR)
Kristian Høgsbergceffd7b2010-03-10 16:47:36 -0500114 $(INSTALL) -d $(DESTDIR)$(PKG_CONFIG_DIR)
115 $(INSTALL) -m 644 egl.pc $(DESTDIR)$(PKG_CONFIG_DIR)
Brian Pauladbff7e2005-04-22 21:09:39 +0000116
117clean:
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800118 -rm -f *.o
Pauli Nieminen11038982009-08-09 15:22:34 +0300119 -rm -f depend depend.bak
Brian Pauladbff7e2005-04-22 21:09:39 +0000120
121
122depend: $(SOURCES) $(HEADERS)
123 @ echo "running $(MKDEP)"
Keith Whitwell90ee7a42007-08-07 10:18:04 +0100124 @ rm -f depend
Brian Pauladbff7e2005-04-22 21:09:39 +0000125 @ touch depend
126 $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDE_DIRS) \
Brian Paul3e412892008-05-27 13:45:16 -0600127 $(SOURCES) $(HEADERS) > /dev/null 2>/dev/null
128
Brian Pauladbff7e2005-04-22 21:09:39 +0000129
Chia-I Wud4c1ee02009-12-21 11:13:18 +0800130-include depend
Brian Pauladbff7e2005-04-22 21:09:39 +0000131# DO NOT DELETE