#ifdef'd xmlerror.h
[dia.git] / plug-ins / makefile.msc
blob7361319169ff0c49fd69460003d6321a1e09de2c
1 !IFNDEF PACKAGE
3 PLUGINS = cgm dummy dxf hpgl metapost pstricks shape svg wmf wpg xfig
5 #broken since StdProp overhaul : diaimport 
7 # The main target
8 all : sub-all
10 sub-all: 
11         for %d in ($(PLUGINS)) do nmake -nologo -f makefile.msc sub-one THIS=%d
13 sub-one:
14         @cd $(THIS)
15         @nmake -nologo -f ..\makefile.msc $(THIS).dll PACKAGE=$(THIS) OBJ_$(THIS)=1
16         @cd ..
18 !ELSE
20 TOP = ..\..\..
21 PRJ_TOP = ..\..
22 PKG_DEF = ..\objects.def
24 !INCLUDE $(TOP)\glib\build\win32\make.msc
26 PKG_CFLAGS = -FImsvc_recommended_pragmas.h \
27         $(GLIB_CFLAGS) $(GTK_CFLAGS) \
28         -I. $(LIBXML2_CFLAGS) -I$(PRJ_TOP)\lib
30 PKG_LINK = $(GTK_LIBS) $(GLIB_LIBS) \
31         $(LIBXML2_LIBS) \
32         $(PRJ_TOP)\lib\libdia.lib
35 # Special object definitions for the various plugins, if needed
38 !IFDEF OBJ_dxf
39 OBJECTS = \
40   dxf.obj \
41   dxf-export.obj \
42   dxf-import.obj
43 !ENDIF
45 !IFDEF OBJ_metapost
46 OBJECTS = \
47   metapost.obj \
48   render_metapost.obj
49 !ENDIF
51 !IFDEF OBJ_pstricks
52 OBJECTS = \
53   pstricks.obj \
54   render_pstricks.obj
55 !ENDIF
57 !IFDEF OBJ_shape
58 OBJECTS = \
59   shape.obj \
60   shape-export.obj
61 !ENDIF
63 !IFDEF OBJ_svg
64 OBJECTS = \
65   svg.obj \
66   render_svg.obj
67 !ENDIF
69 !IFDEF OBJ_wmf
70 OBJECTS = \
71   wmf.obj \
72   wmf_gdi.obj
73 !ENDIF
75 !IFDEF OBJ_xfig
76 OBJECTS = \
77   xfig.obj \
78   xfig-common.obj \
79   xfig-export.obj \
80   xfig-import.obj
81 # this plug-in imports group_create () from dia.exe 
82 PKG_LINK = $(PKG_LINK) ..\..\app\dia.lib
83 !ENDIF
85 # just one file ...
86 !IFNDEF OBJECTS
87 OBJECTS = $(PACKAGE).obj
88 !ENDIF
90 ## common stuff
91 ## compiler and linker switches
92 !IFNDEF DEBUG
93 # Full optimization:
94 OPTIMIZE = -Ox -MD
95 LINKDEBUG =
96 !ELSE
97 # Debugging:
98 OPTIMIZE = -Zi -MDd
99 LINKDEBUG = /debug
100 !ENDIF
102 # cl -? describes the options
103 CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
105 # No general LDFLAGS needed
106 LDFLAGS = /link $(LINKDEBUG)
107 INSTALL = copy
109 CFLAGS = -I. -I$(PRJ_TOP) -DHAVE_CONFIG_H
111 $(PACKAGE).lib : $(OBJECTS)
112         lib /out:$(PACKAGE).lib $(OBJECTS)
114 $(PACKAGE).dll : $(OBJECTS) $(PKG_DEF)
115         $(CC) $(CFLAGS) -LD -Fe$(PACKAGE).dll $(OBJECTS) $(PKG_LINK) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) /def:$(PKG_DEF)
116 $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
117         copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
119 .cpp.obj :
120         $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
122 .c.obj :
123         $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
125 clean::
126         del config.h
127         del *.exe
128         del *.obj
129         del *.dll
130         del *.lib
131         del *.err
132         del *.map
133         del *.sym
134         del *.exp
135         del *.lk1
136         del *.mk1
137         del *.pdb
138         del *.ilk
140 !ENDIF