If creating the ITaskbarList3 interface fails, set it to NULL
[TortoiseGit.git] / ext / scintilla / win32 / makefile
blob8a41d7b7f19971fb42d254c6b9369c4d1e02c578
1 # Make file for Scintilla on Windows
2 # Copyright 1998-2010 by Neil Hodgson <neilh@scintilla.org>
3 # The License.txt file describes the conditions under which this software may be distributed.
4 # This makefile assumes the mingw32 version of GCC 3.x or 4.x is used and changes will
5 # be needed to use other compilers.
7 .SUFFIXES: .cxx
8 CC = g++
9 DEL = del /q
11 COMPONENT = ../bin/Scintilla.dll
12 LEXCOMPONENT = ../bin/SciLexer.dll
13 LEXLIB = Lexers.a
15 vpath %.h ../src ../include ../lexlib
16 vpath %.cxx ../src ../lexlib ../lexers
18 LDFLAGS=-shared -static -Wl,--enable-runtime-pseudo-reloc-v2 -mwindows -Wl,--add-stdcall-alias
19 LIBS=-lstdc++ -limm32 -lole32 -luuid
20 # Add -MMD to get dependencies
21 INCLUDEDIRS=-I ../include -I ../src -I../lexlib
22 CXXBASEFLAGS=-Wall -Wno-missing-braces -Wno-char-subscripts -pedantic $(INCLUDEDIRS) -fno-rtti
24 ifdef DEBUG
25 CXXFLAGS=-DDEBUG -g $(CXXBASEFLAGS)
26 else
27 CXXFLAGS=-DNDEBUG -Os $(CXXBASEFLAGS)
28 STRIPFLAG=-s
29 endif
31 .cxx.o:
32 $(CC) $(CXXFLAGS) -c $<
34 ALL: $(COMPONENT) $(LEXCOMPONENT) $(LEXLIB) ScintillaWinS.o
36 clean:
37 $(DEL) *.exe *.o *.obj *.dll *.res *.map
39 deps:
40 $(CC) -MM $(CXXFLAGS) *.cxx ../src/*.cxx ../lexlib/*.cxx ../lexers/*.cxx >deps.mak
42 LEXOBJS:=$(addsuffix .o,$(basename $(notdir $(wildcard ../lexers/Lex*.cxx))))
45 BASEOBJS = \
46 AutoComplete.o \
47 CallTip.o \
48 CellBuffer.o \
49 CharacterSet.o \
50 CharClassify.o \
51 ContractionState.o \
52 Decoration.o \
53 Document.o \
54 Editor.o \
55 KeyMap.o \
56 Indicator.o \
57 LineMarker.o \
58 PerLine.o \
59 PlatWin.o \
60 PositionCache.o \
61 PropSetSimple.o \
62 RESearch.o \
63 RunStyles.o \
64 ScintRes.o \
65 Selection.o \
66 Style.o \
67 UniConversion.o \
68 ViewStyle.o \
69 XPM.o
71 SOBJS = ScintillaWin.o ScintillaBase.o $(BASEOBJS)
73 $(COMPONENT): $(SOBJS) Scintilla.def
74 $(CC) $(LDFLAGS) -o $@ $(STRIPFLAG) $(SOBJS) $(CXXFLAGS) $(LIBS)
76 LOBJS = \
77 Accessor.o \
78 Catalogue.o \
79 ExternalLexer.o \
80 LexerBase.o \
81 LexerModule.o \
82 LexerSimple.o \
83 ScintillaWinL.o \
84 ScintillaBaseL.o \
85 StyleContext.o \
86 WordList.o \
87 $(BASEOBJS) \
88 $(LEXOBJS)
89 $(LEXCOMPONENT): $(LOBJS) Scintilla.def
90 $(CC) $(LDFLAGS) -o $@ $(STRIPFLAG) $(LOBJS) $(CXXFLAGS) $(LIBS)
92 $(LEXLIB): $(LEXOBJS)
93 $(AR) rc $@ $^
94 ranlib $@
96 # Automatically generate dependencies for most files with "make deps"
97 include deps.mak
99 # These dependencies are maintained by hand as they do not use the default output name
101 ScintillaBaseL.o: ScintillaBase.cxx Platform.h \
102 ILexer.h Scintilla.h SciLexer.h PropSetSimple.h \
103 SplitVector.h Partitioning.h RunStyles.h \
104 ContractionState.h CellBuffer.h CallTip.h \
105 KeyMap.h Indicator.h XPM.h LineMarker.h \
106 Style.h ViewStyle.h AutoComplete.h \
107 CharClassify.h Decoration.h Document.h \
108 Selection.h PositionCache.h Editor.h \
109 ScintillaBase.h LexAccessor.h Accessor.h \
110 LexerModule.h Catalogue.h
112 ScintillaWinL.o: ScintillaWin.cxx Platform.h \
113 ILexer.h Scintilla.h SplitVector.h \
114 Partitioning.h RunStyles.h ContractionState.h \
115 CellBuffer.h CallTip.h KeyMap.h Indicator.h \
116 XPM.h LineMarker.h Style.h AutoComplete.h \
117 ViewStyle.h CharClassify.h Decoration.h \
118 Document.h Selection.h PositionCache.h \
119 Editor.h ScintillaBase.h UniConversion.h \
120 LexAccessor.h Accessor.h \
121 LexerModule.h Catalogue.h
123 ScintillaWinS.o: ScintillaWin.cxx Platform.h \
124 ILexer.h Scintilla.h SplitVector.h \
125 Partitioning.h RunStyles.h ContractionState.h \
126 CellBuffer.h CallTip.h KeyMap.h Indicator.h \
127 XPM.h LineMarker.h Style.h AutoComplete.h \
128 ViewStyle.h CharClassify.h Decoration.h \
129 Document.h Selection.h PositionCache.h \
130 Editor.h ScintillaBase.h UniConversion.h
132 ScintillaBaseL.o:
133 $(CC) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@
135 ScintillaWinS.o:
136 $(CC) $(CXXFLAGS) -D STATIC_BUILD -c $< -o $@
138 ScintillaWinL.o:
139 $(CC) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@
141 ScintRes.o: ScintRes.rc
142 windres ScintRes.rc $@