Merge pull request #404 from ntrel/enum-base
[geany-mirror.git] / scintilla / makefile.win32
blob1060cf2b558835f76b89a617bb5b1ee0de4475db
1 # Make file for Scintilla on Linux or compatible OS
2 # Copyright 1998-2001 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 GCC 3.1 is used and changes will be needed to use other compilers.
5 # GNU make does not like \r\n line endings so should be saved to CVS in binary form.
6 # Builds for GTK+ 2 if available else GTK+ 1.
7 # To force GTK+ 2 build, define GTK2 on the make command line.
8 # To force GTK+ 1 build, define GTK1 on the make command line.
10 .SUFFIXES: .cxx .c .o .h .a
11 CXX = g++
12 CC = gcc
13 AR = ar
14 RANLIB = ranlib
15 PREFIX = C:/libs
16 RM = del
17 -include ../localwin32.mk
19 ifdef MSYS
20 RM = rm -f
21 endif
23 COMPLIB=scintilla.a
25 GTK_INCLUDES= \
26         -I$(PREFIX)/include/gtk-2.0 \
27         -I$(PREFIX)/lib/gtk-2.0/include \
28         -I$(PREFIX)/include/atk-1.0 \
29         -I$(PREFIX)/include/cairo \
30         -I$(PREFIX)/include/gdk-pixbuf-2.0 \
31         -I$(PREFIX)/include/pango-1.0 \
32         -I$(PREFIX)/include/glib-2.0 \
33         -I$(PREFIX)/lib/glib-2.0/include \
34         -I$(PREFIX)/include \
35         -I$(PREFIX)/include/gettext
38 vpath %.h gtk lexers lexlib src include
39 vpath %.cxx gtk lexers lexlib src
40 vpath %.c gtk
42 INCLUDEDIRS=-I include -I src -I lexlib -I . $(GTK_INCLUDES)
43 CXXBASEFLAGS=-Wall -Wno-missing-braces -Wno-char-subscripts -DGTK -DSCI_LEXER $(INCLUDEDIRS) -mms-bitfields
45 ifdef THREADS
46 THREADFLAGS=
47 else
48 THREADFLAGS=-DG_THREADS_IMPL_NONE
49 endif
51 ifdef DEBUG
52 CXXFLAGS=-DDEBUG -g -O0 $(CXXBASEFLAGS) $(THREADFLAGS)
53 else
54 CXXFLAGS=-DNDEBUG -Os $(CXXBASEFLAGS) $(THREADFLAGS)
55 endif
57 CONFIGFLAGS=$(GTK_INCLUDES)
58 MARSHALLER=scintilla-marshal.o
60 .cxx.o:
61         $(CXX) $(CXXFLAGS) -c $<
62 .c.o:
63         $(CC) $(CXXFLAGS) -c $<
65 LEXOBJS=\
66 LexAbaqus.o \
67 LexAda.o \
68 LexAsm.o \
69 LexBash.o \
70 LexCOBOL.o \
71 LexCSS.o \
72 LexCPP.o \
73 LexCoffeeScript.o \
74 LexHTML.o \
75 LexOthers.o \
76 LexPascal.o \
77 LexPerl.o \
78 LexPO.o \
79 LexPowerShell.o \
80 LexPython.o \
81 LexSQL.o \
82 LexCaml.o \
83 LexTCL.o \
84 LexTxt2tags.o \
85 LexRuby.o \
86 LexErlang.o \
87 LexForth.o \
88 LexFortran.o \
89 LexVHDL.o \
90 LexVerilog.o \
91 LexMarkdown.o \
92 LexMatlab.o \
93 LexD.o \
94 LexLaTeX.o \
95 LexLisp.o \
96 LexLua.o \
97 LexHaskell.o \
98 LexBasic.o \
99 LexR.o \
100 LexRust.o \
101 LexYAML.o \
102 LexCmake.o \
103 LexNsis.o
105 all: $(COMPLIB)
107 clean:
108         -$(RM) deps.mak *.o $(COMPLIB)
110 SRCOBJS=\
111         PlatGTK.o \
112         ScintillaGTK.o \
113         Accessor.o \
114         CharacterCategory.o \
115         CaseConvert.o \
116         CaseFolder.o \
117         CharacterSet.o \
118         LexerBase.o \
119         LexerModule.o \
120         LexerNoExceptions.o \
121         LexerSimple.o \
122         PropSetSimple.o \
123         StyleContext.o \
124         WordList.o \
125         AutoComplete.o \
126         CallTip.o \
127         Catalogue.o \
128         CellBuffer.o \
129         CharClassify.o \
130         ContractionState.o \
131         Decoration.o \
132         Document.o \
133         Editor.o \
134         EditModel.o \
135         EditView.o \
136         ExternalLexer.o \
137         Indicator.o \
138         KeyMap.o \
139         LineMarker.o \
140         MarginView.o \
141         PerLine.o \
142         PositionCache.o \
143         RESearch.o \
144         RunStyles.o \
145         ScintillaBase.o \
146         Selection.o \
147         Style.o \
148         UniConversion.o \
149         ViewStyle.o \
150         XPM.o
152 $(COMPLIB): $(MARSHALLER) $(LEXOBJS) $(SRCOBJS)
153         $(AR) rc $@ $^
154         $(RANLIB) $@
156 deps.mak:
157         $(CXX) -MM  $(CXXFLAGS) gtk/*.cxx lexers/*.cxx lexlib/*.cxx src/*.cxx >deps.mak
159 # Generate header dependencies with "make deps.mak"
160 include deps.mak