diff options
| author | Neil <nyamatongwe@gmail.com> | 2019-12-29 11:13:51 +1100 | 
|---|---|---|
| committer | Neil <nyamatongwe@gmail.com> | 2019-12-29 11:13:51 +1100 | 
| commit | b47e1f6f5b2132a0a8c026fba34bc1e78f51a160 (patch) | |
| tree | 673923e75ed9a4ab704ae8c437b54272bc0354b4 | |
| parent | 1626fbbff24966c6562942fa23832e5c87019173 (diff) | |
| download | scintilla-mirror-b47e1f6f5b2132a0a8c026fba34bc1e78f51a160.tar.gz | |
Standardize names and order between make files on win32 and gtk.
| -rw-r--r-- | gtk/makefile | 8 | ||||
| -rw-r--r-- | win32/makefile | 101 | ||||
| -rw-r--r-- | win32/scintilla.mak | 61 | 
3 files changed, 102 insertions, 68 deletions
| diff --git a/gtk/makefile b/gtk/makefile index be280b7e0..2a2eb0123 100644 --- a/gtk/makefile +++ b/gtk/makefile @@ -74,7 +74,7 @@ DEFINES += -D$(if $(DEBUG),DEBUG,NDEBUG)  BASE_FLAGS += $(if $(DEBUG),-g,-Os)  CXX_BASE_FLAGS =--std=gnu++17 $(BASE_FLAGS) - +CXX_ALL_FLAGS =$(DEFINES) $(INCLUDES) $(CXX_BASE_FLAGS) $(CONFIG_FLAGS)   CONFIG_FLAGS:=$(shell pkg-config --cflags $(GTK_VERSION))  MARSHALLER=scintilla-marshal.o @@ -85,7 +85,7 @@ clean:  	$(DEL) *.o $(call normalize,$(COMPLIB)) *.plist  .cxx.o: -	$(CXX) $(DEFINES) $(INCLUDES) $(CONFIG_FLAGS) $(CXX_BASE_FLAGS) $(CXXFLAGS) -c $< +	$(CXX) $(CXX_ALL_FLAGS) $(CXXFLAGS) -c $<  .c.o:  	$(CC) $(DEFINES) $(INCLUDES) $(CONFIG_FLAGS) $(BASE_FLAGS) $(CFLAGS) -w -c $< @@ -97,14 +97,14 @@ GLIB_GENMARSHAL_FLAGS = --prefix=scintilla_marshal  .list.c:  	$(GLIB_GENMARSHAL) --body $(GLIB_GENMARSHAL_FLAGS) $< > $@ -LEX_OBJS:=$(addsuffix .o,$(basename $(sort $(notdir $(wildcard $(srcdir)/../lexers/Lex*.cxx))))) -  analyze:  	clang --analyze $(DEFINES) $(INCLUDES) $(CONFIG_FLAGS) $(CXX_BASE_FLAGS) $(CXXFLAGS) $(srcdir)/*.cxx $(basedir)/src/*.cxx $(basedir)/lexlib/*.cxx $(basedir)/lexers/*.cxx  depend deps.mak:  	python DepGen.py +LEX_OBJS:=$(addsuffix .o,$(basename $(sort $(notdir $(wildcard $(basedir)/lexers/Lex*.cxx))))) +  # Required for base Scintilla  SRC_OBJS = \  	AutoComplete.o \ diff --git a/win32/makefile b/win32/makefile index cd02f9dcf..2c7700e7f 100644 --- a/win32/makefile +++ b/win32/makefile @@ -5,7 +5,7 @@  # This makefile assumes Mingw-w64 GCC 9.0+ is used and changes will be needed to use other compilers.  # Clang 9.0+ can be used with CLANG=1 on command line. -.SUFFIXES: .cxx +.SUFFIXES: .cxx .c .o .h .a  DIR_BIN=../bin @@ -13,63 +13,70 @@ COMPONENT = $(DIR_BIN)/Scintilla.dll  LEXCOMPONENT = $(DIR_BIN)/SciLexer.dll  LIBSCI = $(DIR_BIN)/libscintilla.a +WARNINGS = -Wpedantic -Wall +  ifdef CLANG  CXX = clang++ +DEFINES += -D_CRT_SECURE_NO_DEPRECATE  else  # MinGW GCC  LIBSMINGW = -lstdc++  STRIPOPTION = -s  endif +ARFLAGS = rc +RANLIB ?= ranlib +WINDRES ?= windres -CXXSTD = c++17 +# Environment variable windir always defined on Win32 -ifeq ($(OS),Windows_NT) +ifdef windir  DEL = $(if $(wildcard $(dir $(SHELL))rm.exe), $(dir $(SHELL))rm.exe -f, del /q)  else  DEL = rm -f  endif -RANLIB ?= ranlib -WINDRES ?= windres  vpath %.h ../src ../include ../lexlib  vpath %.cxx ../src ../lexlib ../lexers  LDFLAGS=-shared -static -mwindows  LIBS=-lgdi32 -luser32 -limm32 -lole32 -luuid -loleaut32 -lmsimg32 $(LIBSMINGW) -# Add -MMD to get dependencies -INCLUDEDIRS=-I ../include -I ../src -I../lexlib -CXXBASEFLAGS=--std=$(CXXSTD) -Wall -pedantic $(INCLUDEDIRS) -D_CRT_SECURE_NO_DEPRECATE=1 +INCLUDES=-I ../include -I ../src -I../lexlib + +BASE_FLAGS += $(WARNINGS)  ifdef NO_CXX11_REGEX -REFLAGS=-DNO_CXX11_REGEX +DEFINES += -DNO_CXX11_REGEX  endif -ifdef DEBUG -CXXFLAGS=-DDEBUG -g $(CXXBASEFLAGS) -else -CXXFLAGS=-DNDEBUG -Os $(CXXBASEFLAGS) +DEFINES += -D$(if $(DEBUG),DEBUG,NDEBUG) +BASE_FLAGS += $(if $(DEBUG),-g,-Os) + +ifndef DEBUG  STRIPFLAG=$(STRIPOPTION)  endif +CXX_BASE_FLAGS =--std=c++17 $(BASE_FLAGS) +CXX_ALL_FLAGS =$(DEFINES) $(INCLUDES) $(CXX_BASE_FLAGS) +  all:	$(COMPONENT) $(LEXCOMPONENT) $(LIBSCI)  clean:  	$(DEL) *.exe *.o *.a *.obj *.dll *.res *.map *.plist  .cxx.o: -	$(CXX) $(CXXFLAGS) $(REFLAGS) -c $< +	$(CXX) $(CXX_ALL_FLAGS) $(CXXFLAGS) -c $<  analyze: -	$(CXX) --analyze $(CXXFLAGS) *.cxx ../src/*.cxx ../lexlib/*.cxx ../lexers/*.cxx +	$(CXX) --analyze $(CXX_ALL_FLAGS) $(CXXFLAGS) *.cxx ../src/*.cxx ../lexlib/*.cxx ../lexers/*.cxx  depend deps.mak:  	python DepGen.py -LEXOBJS:=$(addsuffix .o,$(basename $(sort $(notdir $(wildcard ../lexers/Lex*.cxx))))) +LEX_OBJS:=$(addsuffix .o,$(basename $(sort $(notdir $(wildcard ../lexers/Lex*.cxx)))))  # Required for base Scintilla -BASEOBJS = \ +SRC_OBJS = \  	AutoComplete.o \  	CallTip.o \  	CaseConvert.o \ @@ -85,64 +92,76 @@ BASEOBJS = \  	EditModel.o \  	Editor.o \  	EditView.o \ -	KeyMap.o \  	Indicator.o \ +	KeyMap.o \  	LineMarker.o \  	MarginView.o \  	PerLine.o \ -	PlatWin.o \  	PositionCache.o \ -	PropSetSimple.o \  	RESearch.o \  	RunStyles.o \ -	ScintRes.o \  	Selection.o \  	Style.o \  	UniConversion.o \  	UniqueString.o \  	ViewStyle.o \ -	XPM.o \ -	HanjaDic.o - -SOBJS = ScintillaDLL.o ScintillaWin.o ScintillaBase.o $(BASEOBJS) +	XPM.o  # Required by lexers -LEXLIBOBJS=\ +LEXLIB_OBJS = \  	Accessor.o \  	Catalogue.o \ -	ExternalLexer.o \  	DefaultLexer.o \ +	ExternalLexer.o \  	LexerBase.o \  	LexerModule.o \  	LexerSimple.o \ +	PropSetSimple.o \  	StyleContext.o \ -	WordList.o \ +	WordList.o  # Required by libraries and DLLs that include lexing -SCILEXOBJS=\ -	$(BASEOBJS) \ -	$(LEXLIBOBJS) \ -	$(LEXOBJS) \ -	ScintillaBaseL.o +SCILEX_OBJS=\ +	$(SRC_OBJS) \ +	$(LEXLIB_OBJS) \ +	$(LEX_OBJS) \ +	HanjaDic.o \ +	PlatWin.o \ +	ScintillaBaseL.o \ +	ScintillaWinL.o + +COMPONENT_OBJS = \ +	$(SRC_OBJS) \ +	HanjaDic.o \ +	PlatWin.o \ +	ScintillaBase.o \ +	ScintillaDLL.o \ +	ScintillaWin.o \ +	ScintRes.o + +LEXCOMPONENT_OBJS = \ +	$(SCILEX_OBJS) \ +	ScintillaDLL.o \ +	ScintRes.o -$(COMPONENT): $(SOBJS) Scintilla.def -	$(CXX) $(LDFLAGS) -o $@ $(STRIPFLAG) $(SOBJS) $(CXXFLAGS) $(LIBS) +$(COMPONENT): $(COMPONENT_OBJS) Scintilla.def +	$(CXX) $(LDFLAGS) -o $@ $(STRIPFLAG) $(COMPONENT_OBJS) $(CXXFLAGS) $(LIBS) -$(LEXCOMPONENT): ScintillaDLL.o ScintillaWinL.o $(SCILEXOBJS) Scintilla.def -	$(CXX) $(LDFLAGS) -o $@ $(STRIPFLAG) ScintillaDLL.o ScintillaWinL.o $(SCILEXOBJS) $(CXXFLAGS) $(LIBS) +$(LEXCOMPONENT): $(LEXCOMPONENT_OBJS) Scintilla.def +	$(CXX) $(LDFLAGS) -o $@ $(STRIPFLAG) $(LEXCOMPONENT_OBJS) $(CXXFLAGS) $(LIBS) -$(LIBSCI): ScintillaWin.o $(SCILEXOBJS) -	$(AR) rc $@ $^ +$(LIBSCI): $(SCILEX_OBJS) +	$(AR) $(ARFLAGS) $@ $^  	$(RANLIB) $@  # Automatically generate dependencies for most files with "make deps"  include deps.mak  ScintillaBaseL.o: -	$(CXX) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@ +	$(CXX) $(CXX_ALL_FLAGS) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@  ScintillaWinL.o: -	$(CXX) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@ +	$(CXX) $(CXX_ALL_FLAGS) $(CXXFLAGS) -D SCI_LEXER -c $< -o $@  ScintRes.o:	ScintRes.rc  	$(WINDRES) ScintRes.rc $@ diff --git a/win32/scintilla.mak b/win32/scintilla.mak index 1537fb190..c5c9748a2 100644 --- a/win32/scintilla.mak +++ b/win32/scintilla.mak @@ -54,8 +54,8 @@ LDFLAGS=$(LDDEBUG) $(LDFLAGS)  CXXFLAGS=$(CXXFLAGS) $(CXXNDEBUG)  !ENDIF -INCLUDEDIRS=-I../include -I../src -I../lexlib -CXXFLAGS=$(CXXFLAGS) $(INCLUDEDIRS) +INCLUDES=-I../include -I../src -I../lexlib +CXXFLAGS=$(CXXFLAGS) $(INCLUDES)  all:	$(COMPONENT) $(LEXCOMPONENT) $(LIBSCI) @@ -67,7 +67,7 @@ depend:  	python DepGen.py  # Required for base Scintilla -BASEOBJS=\ +SRC_OBJS=\  	$(DIR_O)\AutoComplete.obj \  	$(DIR_O)\CallTip.obj \  	$(DIR_O)\CaseConvert.obj \ @@ -88,7 +88,6 @@ BASEOBJS=\  	$(DIR_O)\LineMarker.obj \  	$(DIR_O)\MarginView.obj \  	$(DIR_O)\PerLine.obj \ -	$(DIR_O)\PlatWin.obj \  	$(DIR_O)\PositionCache.obj \  	$(DIR_O)\PropSetSimple.obj \  	$(DIR_O)\RESearch.obj \ @@ -98,18 +97,11 @@ BASEOBJS=\  	$(DIR_O)\UniConversion.obj \  	$(DIR_O)\UniqueString.obj \  	$(DIR_O)\ViewStyle.obj \ -	$(DIR_O)\XPM.obj \ -	$(DIR_O)\HanjaDic.obj \ - -SOBJS=\ -	$(BASEOBJS) \ -	$(DIR_O)\ScintillaBase.obj \ -	$(DIR_O)\ScintillaWin.obj \ -	$(DIR_O)\ScintillaDLL.obj +	$(DIR_O)\XPM.obj  #++Autogenerated -- run scripts/LexGen.py to regenerate -#**LEXOBJS=\\\n\(\t$(DIR_O)\\\*.obj \\\n\) -LEXOBJS=\ +#**LEX_OBJS=\\\n\(\t$(DIR_O)\\\*.obj \\\n\) +LEX_OBJS=\  	$(DIR_O)\LexA68k.obj \  	$(DIR_O)\LexAbaqus.obj \  	$(DIR_O)\LexAda.obj \ @@ -227,7 +219,7 @@ LEXOBJS=\  #--Autogenerated -- end of automatically generated section  # Required by lexers -LEXLIBOBJS=\ +LEXLIB_OBJS = \  	$(DIR_O)\Accessor.obj \  	$(DIR_O)\Catalogue.obj \  	$(DIR_O)\ExternalLexer.obj \ @@ -239,22 +231,45 @@ LEXLIBOBJS=\  	$(DIR_O)\WordList.obj \  # Required by libraries and DLLs that include lexing -SCILEXOBJS=\ -	$(BASEOBJS) \ -	$(LEXLIBOBJS) \ -	$(LEXOBJS) \ -	$(DIR_O)\ScintillaBaseL.obj +SCILEX_OBJS = \ +	$(SRC_OBJS) \ +	$(LEXLIB_OBJS) \ +	$(LEX_OBJS) \ +	$(DIR_O)\HanjaDic.obj \ +	$(DIR_O)\PlatWin.obj \ +	$(DIR_O)\ScintillaBaseL.obj \ +	$(DIR_O)\ScintillaWinL.obj + +COMPONENT_OBJS = \ +	$(DIR_O)\HanjaDic.obj \ +	$(DIR_O)\PlatWin.obj \ +	$(DIR_O)\ScintillaBase.obj \ +	$(DIR_O)\ScintillaDLL.obj \ +	$(DIR_O)\ScintillaWin.obj \ +	$(SRC_OBJS) + +LEXCOMPONENT_OBJS = \ +	$(DIR_O)\ScintillaDLL.obj \ +	$(SCILEX_OBJS) + +SOBJS = \ +	$(SRC_OBJS) \ +	$(DIR_O)\HanjaDic.obj \ +	$(DIR_O)\PlatWin.obj \ +	$(DIR_O)\ScintillaBase.obj \ +	$(DIR_O)\ScintillaWin.obj \ +	$(DIR_O)\ScintillaDLL.obj  $(DIR_O)\ScintRes.res : ScintRes.rc  	$(RC) -fo$@ $** -$(COMPONENT): $(SOBJS) $(DIR_O)\ScintRes.res +$(COMPONENT): $(COMPONENT_OBJS) $(DIR_O)\ScintRes.res  	$(LD) $(LDFLAGS) -DEF:Scintilla.def -DLL -OUT:$@ $** $(LIBS) -$(LEXCOMPONENT): $(SCILEXOBJS) $(DIR_O)\ScintillaDLL.obj $(DIR_O)\ScintillaWinL.obj $(DIR_O)\ScintRes.res +$(LEXCOMPONENT): $(LEXCOMPONENT_OBJS) $(DIR_O)\ScintRes.res  	$(LD) $(LDFLAGS) -DEF:Scintilla.def -DLL -OUT:$@ $** $(LIBS) -$(LIBSCI): $(SCILEXOBJS) $(DIR_O)\ScintillaWin.obj +$(LIBSCI): $(SCILEX_OBJS)  	LIB /OUT:$@ $**  # Define how to build all the objects and what they depend on | 
