Blob Blame History Raw
diff -ur c07.02.01/source/Makefile c07.02.01.new/source/Makefile
--- c07.02.01/source/Makefile	2007-07-09 04:28:29.000000000 +0200
+++ c07.02.01.new/source/Makefile	2008-02-14 11:31:59.000000000 +0100
@@ -1,15 +1,17 @@
 # Makefile for compiling Cloudy on a g++ platform
 # This works only with GNU make!
 
-CXX = g++
-CXXFLAGS = -ansi -g -O3 -Wall
-LDLIBS = -lm
+
+
+
 .PHONY: clean distclean depend
 
 # this is a filter to erase optimization flags from CXXFLAGS
 OPTFILTER = -O -O1 -O2 -O3 -O4 -O5 -Os -xO -xO1 -xO2 -xO3 -xO4 -xO5 -fast
 
 CXXFLAGSNOOPT = ${filter-out ${OPTFILTER},${CXXFLAGS}}
+CXXNOLIBFLAGS := ${CXXFLAGS}
+CXXFLAGS = -fPIC -DPIC $(CXXNOLIBFLAGS)
 
 main := maincl.cpp
 source := ${wildcard *.cpp}
@@ -31,16 +33,20 @@
   CDP = $(shell pwd)/../data/
 endif
 
-cloudy.exe : maincl.o libcloudy.a
-	${CXX} ${CXXFLAGS} ${LDFLAGS} -o cloudy.exe maincl.o libcloudy.a ${LDLIBS}
+cloudy.exe : maincl.cpp libcloudy.so
+	${CXX} ${CXXNOLIBFLAGS} ${LDFLAGS} -o cloudy.exe maincl.cpp -L. -lcloudy ${LDLIBS}
 
 libcloudy.a: ${libobjects}
 	ar ru libcloudy.a ${libobjects}
 	${RANLIB} libcloudy.a
 
+libcloudy.so: ${libobjects}
+	${CXX} ${CXXFLAGS} -shared -o libcloudy.so.0 -Wl,-soname,libcloudy.so.0 ${libobjects} ${LDFLAGS}
+	ln -s libcloudy.so.0 libcloudy.so
 clean :
 	rm -f *.o
 	rm -f libcloudy.a
+	rm -f libcloudy.so*
 	rm -f cloudy.exe
 
 distclean :