mesa: GLvector4f:: flags is a GLbitfield, update comments too.
[mesa.git] / src / mesa / Makefile.mgw
index 3b52834bd1c327fe429e8acf5197dc3c741fca4a..097c390a83e2625e402cc415fcfb2cb021b836ad 100644 (file)
 # Set this to the prefix of your build tools, i.e. mingw32-
 TOOLS_PREFIX = mingw32-
 
+ifeq ($(ICD),1)
+  LIB_NAME = mesa32
+else
+  LIB_NAME = opengl32
+endif
 
+DLL_EXT = .dll
+IMP_EXT = .a
+LIB_PRE = lib
+STRIP = -s
+
+AR = ar
+ARFLAGS = crus
+DLLTOOL = dlltool
 
 TOP = ../..
 GLIDE ?= $(TOP)/glide3
 LIBDIR = $(TOP)/lib
-ifeq ($(ICD),1)
-  GL_DLL = mesa32.dll
-  GL_IMP = libmesa32.a
-else
-  GL_DLL = opengl32.dll
-  GL_IMP = libopengl32.a
-endif
-
-GL_DEF = gl.def
 
-include $(TOP)/configs/config.mgw
-GL_USING_STDCALL ?= 1
+GL_DLL = $(LIB_NAME)$(DLL_EXT)
+GL_IMP = $(LIB_PRE)$(LIB_NAME)$(IMP_EXT)
 
 MESA_LIB = libmesa.a
+CC = $(TOOLS_PREFIX)gcc
 
 LDLIBS = -lgdi32 -luser32 -liberty
-LDFLAGS = -Wl,--out-implib=$(LIBDIR)/$(GL_IMP) -Wl,--output-def=$(LIBDIR)/gl.def
-
-CC = $(TOOLS_PREFIX)gcc
-CFLAGS += -DBUILD_GL32 -D_OPENGL32_ -D_DLL -DMESA_MINWARN -DNDEBUG -D_USRDLL -DGDI_EXPORTS
+LDFLAGS = $(STRIP) -shared -fPIC -Wl,--kill-at
 
-ifeq ($(GL_USING_STDCALL),1)
-  LDFLAGS += -Wl,--add-stdcall-alias
-else
-  CFLAGS += -DGL_NO_STDCALL
-endif
+CFLAGS += -DBUILD_GL32 -D_DLL -DMESA_MINWARN
+CFLAGS += -DNDEBUG -DUSE_EXTERNAL_DXTN_LIB=1
 
-CFLAGS += -DUSE_EXTERNAL_DXTN_LIB=1
 ifeq ($(FX),1)
   CFLAGS += -I$(GLIDE)/include -DFX
   LDLIBS += -L$(GLIDE)/lib -lglide3x
@@ -112,12 +110,11 @@ else
     CFLAGS += -DUSE_MGL_NAMESPACE
     GL_DEF = drivers/windows/icd/mesa.def
   else    
-    GL_DEF = drivers/windows/gdi/mesa.def
+    GL_DEF = $(LIB_NAME).def
   endif
 endif
 
-AR = ar
-ARFLAGS = crus
+
 
 UNLINK = del $(subst /,\,$(1))
 ifneq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
@@ -127,7 +124,7 @@ ifneq ($(wildcard $(addsuffix /rm,$(subst :, ,$(PATH)))),)
 UNLINK = $(RM) $(1)
 endif
 
-include sources
+include sources.mak
 
 CFLAGS += $(INCLUDE_DIRS) 
 
@@ -157,7 +154,7 @@ DRIVER_SOURCES = \
 endif
 endif
 
-SOURCES = $(CORE_SOURCES) $(X86_SOURCES) $(COMMON_DRIVER_SOURCES) $(DRIVER_SOURCES)
+SOURCES = $(MESA_SOURCES) $(GLAPI_SOURCES) $(X86_SOURCES) $(DRIVER_SOURCES)
 
 OBJECTS = $(addsuffix .o,$(basename $(SOURCES)))
 
@@ -173,14 +170,17 @@ RESOURCE = $(GL_RES:.rc=.res)
 .rc.res:
        windres -o $@ -Irc -Ocoff $<
 
+
 all: $(LIBDIR) $(LIBDIR)/$(GL_DLL) $(LIBDIR)/$(GL_IMP)
 
 $(LIBDIR):
        mkdir -p $(LIBDIR)
 
 $(LIBDIR)/$(GL_DLL) $(LIBDIR)/$(GL_IMP): $(OBJECTS) $(RESOURCE)
-       $(CC) -shared -fPIC -o $(LIBDIR)/$(GL_DLL) $(LDFLAGS) \
-       $^ $(LDLIBS)
+       $(CC) $(LDFLAGS) -o $(LIBDIR)/$(GL_DLL) $^ $(LDLIBS)
+       $(DLLTOOL) --as=as --dllname $(LIB_NAME) --output-def $(LIBDIR)/$(GL_DEF) $^
+       $(DLLTOOL) --as=as -k --dllname $(LIB_NAME) --output-lib $(LIBDIR)/$(GL_IMP) --def $(LIBDIR)/$(GL_DEF)
+
 
 $(X86_OBJECTS): x86/matypes.h