--- makefile.orig	2013-02-18 02:20:43.000000000 -0500
+++ makefile	2013-02-26 18:16:54.000000000 -0500
@@ -7,14 +7,7 @@
 # Also works with ming32-make on Windows.
 
 .SUFFIXES: .cxx .c .o .h .a
-ifdef CLANG
-CC = clang --std=c++0x
-CCOMP = clang
-else
-CC = g++
-CCOMP = gcc
-endif
-AR = ar
+AR = $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared
 RANLIB = touch
 
 ifdef GTK3
@@ -36,7 +29,8 @@
 COMPLIB=..\bin\scintilla.a
 else
 DEL = rm -f
-COMPLIB=../bin/scintilla.a
+COMPLIB=../bin/libscintilla.so.2
+LEXRLIB=../bin/libscintilla_lexers.so.2
 endif
 
 vpath %.h ../src ../include ../lexlib
@@ -63,16 +57,17 @@
 CFLAGS:=$(CXXTFLAGS)
 
 CONFIGFLAGS:=$(shell pkg-config --cflags $(GTKVERSION))
+CONFIGLIBS:=$(shell pkg-config --libs $(GTKVERSION))
 MARSHALLER=scintilla-marshal.o
 
 .cxx.o:
 	$(CC) $(CONFIGFLAGS) $(CXXTFLAGS) $(CXXFLAGS) -c $<
 .c.o:
-	$(CCOMP) $(CONFIGFLAGS) $(CFLAGS) -w -c $<
+	$(CCOMP) $(CONFIGFLAGS) $(CFLAGS) $(CXXFLAGS) -w -c $<
 
 LEXOBJS:=$(addsuffix .o,$(basename $(notdir $(wildcard ../lexers/Lex*.cxx))))
 
-all: $(COMPLIB)
+all: $(COMPLIB) $(LEXRLIB)
 
 clean:
 	$(DEL) *.o $(COMPLIB) *.plist
@@ -88,9 +83,11 @@
 	ScintillaBase.o ContractionState.o Editor.o ExternalLexer.o PropSetSimple.o PlatGTK.o \
 	KeyMap.o LineMarker.o PositionCache.o ScintillaGTK.o CellBuffer.o ViewStyle.o \
 	RESearch.o RunStyles.o Selection.o Style.o Indicator.o AutoComplete.o UniConversion.o XPM.o \
-	$(MARSHALLER) $(LEXOBJS)
-	$(AR) rc $@ $^
-	$(RANLIB) $@
+	$(MARSHALLER)
+	$(AR) -o $@ $^ -Wl,--as-needed $(CONFIGLIBS)
+
+$(LEXRLIB): $(LEXOBJS)
+	$(AR) -o $@ $^ -Wl,--as-needed $(CONFIGLIBS)
 
 # Automatically generate header dependencies with "make deps"
 include deps.mak
