--- makefile.orig	2007-06-11 22:57:30.000000000 -0500
+++ makefile	2007-08-21 17:21:51.000000000 -0500
@@ -8,16 +8,17 @@
 # To force GTK+ 1 build, define GTK1 on the make command line.
 
 .SUFFIXES: .cxx .c .o .h .a
-CC = g++
-CCOMP = gcc
-AR = ar
+#CC = g++
+#CCOMP = gcc
+AR = $(CXX) -shared
 RANLIB = touch
 
 ifeq ($(shell uname),Darwin)
 RANLIB = ranlib
 endif
 
-COMPLIB=../bin/scintilla.a
+COMPLIB=../bin/libscintilla.so.1
+LEXRLIB=../bin/libscintilla_lexers.so.1
 
 vpath %.h ../src ../include
 vpath %.cxx ../src
@@ -32,33 +33,33 @@
 endif
 
 ifdef DEBUG
-CXXFLAGS=-DDEBUG -g $(CXXBASEFLAGS) $(THREADFLAGS)
+CXXFLAGS+=-DDEBUG -g $(CXXBASEFLAGS) $(THREADFLAGS)
 else
-CXXFLAGS=-DNDEBUG -Os $(CXXBASEFLAGS) $(THREADFLAGS)
+CXXFLAGS+=-DNDEBUG -Os $(CXXBASEFLAGS) $(THREADFLAGS)
 endif
 
 # If explicit setting of GTK1 or GTK2 then use that else look for
 # pkg-config which is an OK indication that GTK2 is available
 ifdef GTK2
-CONFIGFLAGS=$(shell pkg-config --cflags gtk+-2.0)
+CONFIGFLAGS=$(shell pkg-config --cflags gtk+-2.0 gthread-2.0)
 MARSHALLER=scintilla-marshal.o
 else
 ifdef GTK1
-CONFIGFLAGS=$(shell gtk-config --cflags)
+CONFIGFLAGS=$(shell pkg-config --cflags gtk+ gthread)
 else
 ifneq (,$(findstring /,$(shell whereis pkg-config)))
-CONFIGFLAGS=$(shell pkg-config --cflags gtk+-2.0)
+CONFIGFLAGS=$(shell pkg-config --cflags gtk+-2.0 gthread-2.0)
 MARSHALLER=scintilla-marshal.o
 else
-CONFIGFLAGS=$(shell gtk-config --cflags)
+CONFIGFLAGS=$(shell pkg-config --cflags gtk+ gthread)
 endif
 endif
 endif
 
 .cxx.o:
-	$(CC) $(CONFIGFLAGS) $(CXXFLAGS) -c $<
+	$(CC) $(PICFLAGS) $(CONFIGFLAGS) $(CXXFLAGS) -c $<
 .c.o:
-	$(CCOMP) $(CONFIGFLAGS) $(CXXFLAGS) -w -c $<
+	$(CCOMP) $(PICFLAGS) $(CONFIGFLAGS) $(CXXFLAGS) -w -c $<
 
 #++Autogenerated -- run src/LexGen.py to regenerate
 #**LEXOBJS=\\\n\(\*.o \)
@@ -75,7 +76,7 @@
 LexVHDL.o LexYAML.o
 #--Autogenerated -- end of automatically generated section
 
-all: $(COMPLIB)
+all: $(COMPLIB) $(LEXRLIB)
 
 clean:
 	rm -f *.o $(COMPLIB)
@@ -88,9 +89,11 @@
 	ScintillaBase.o ContractionState.o Editor.o ExternalLexer.o PropSet.o PlatGTK.o \
 	KeyMap.o LineMarker.o PositionCache.o ScintillaGTK.o CellBuffer.o ViewStyle.o \
 	RESearch.o RunStyles.o Style.o Indicator.o AutoComplete.o UniConversion.o XPM.o \
-	$(MARSHALLER) $(LEXOBJS)
-	$(AR) rc $@ $^
-	$(RANLIB) $@
+	$(MARSHALLER)
+	$(AR) $(CONFIGFLAGS:cflags=libs) -o $@ $^
+
+$(LEXRLIB): $(LEXOBJS)
+	$(AR) $(CONFIGFLAGS:cflags=libs) -o $@ $^
 
 # Automatically generate header dependencies with "make deps"
 include deps.mak
