Index: pluto-lunar/makefile
===================================================================
--- pluto-lunar.orig/makefile
+++ pluto-lunar/makefile
@@ -16,10 +16,10 @@
 # 'integrat' is not built as part of 'make'.  If you want that,  run
 # 'make integrat' and then,  optionally,  'make install_integrat'.
 
-CC=g++
+CC ?= g++
 LIBSADDED=
 EXE=
-CFLAGS=-Wextra -Wall -O3 -pedantic -Wno-unused-parameter
+CFLAGS ?= -Wextra -Wall -O3 -pedantic -Wno-unused-parameter
 
 # You can have your include files in ~/include and libraries in
 # ~/lib,  in which case only the current user can use them;  or
@@ -129,113 +129,113 @@ clean:
 	$(RM) test_ref$(EXE) testprec$(EXE) uranus1$(EXE) utc_test$(EXE) liblunar.a
 
 adestest$(EXE): adestest.o liblunar.a
-	$(CC) $(CFLAGS) -o adestest$(EXE) adestest.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o adestest$(EXE) adestest.o liblunar.a $(LIBSADDED)
 
 astcheck$(EXE): astcheck.o liblunar.a
-	$(CC) $(CFLAGS) -o astcheck$(EXE) astcheck.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o astcheck$(EXE) astcheck.o liblunar.a $(LIBSADDED)
 
 astephem$(EXE): astephem.o mpcorb.o liblunar.a
-	$(CC) $(CFLAGS) -o astephem$(EXE) astephem.o mpcorb.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o astephem$(EXE) astephem.o mpcorb.o liblunar.a $(LIBSADDED)
 
 calendar$(EXE): calendar.o liblunar.a
-	$(CC) $(CFLAGS) -o calendar$(EXE) calendar.o   liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o calendar$(EXE) calendar.o   liblunar.a $(LIBSADDED)
 
 cgicheck$(EXE): astcheck.cpp liblunar.a cgicheck.o
-	$(CC) $(CFLAGS) -o cgicheck$(EXE) -DCGI_VERSION cgicheck.o astcheck.cpp liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o cgicheck$(EXE) -DCGI_VERSION cgicheck.o astcheck.cpp liblunar.a $(LIBSADDED)
 
 colors$(EXE): colors.cpp
-	$(CC) $(CFLAGS) -o colors$(EXE) colors.cpp -DSIMPLE_TEST_PROGRAM
+	$(CC) $(LDFLAGS) $(CFLAGS) -o colors$(EXE) colors.cpp -DSIMPLE_TEST_PROGRAM
 
 colors2$(EXE): colors2.cpp
-	$(CC) $(CFLAGS) -o colors2$(EXE) colors2.cpp -DTEST_FUNC
+	$(CC) $(LDFLAGS) $(CFLAGS) -o colors2$(EXE) colors2.cpp -DTEST_FUNC
 
 cosptest$(EXE): cosptest.o liblunar.a
-	$(CC) $(CFLAGS) -o cosptest$(EXE) cosptest.o   liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o cosptest$(EXE) cosptest.o   liblunar.a $(LIBSADDED)
 
 dist$(EXE): dist.cpp
-	$(CC) $(CFLAGS) -o dist$(EXE) dist.cpp $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o dist$(EXE) dist.cpp $(LIBSADDED)
 
 easter$(EXE): easter.cpp liblunar.a
-	$(CC) $(CFLAGS) -o easter$(EXE) -DTEST_CODE easter.cpp liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o easter$(EXE) -DTEST_CODE easter.cpp liblunar.a $(LIBSADDED)
 
 get_test$(EXE): get_test.o liblunar.a
-	$(CC) $(CFLAGS) -o get_test$(EXE) get_test.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o get_test$(EXE) get_test.o liblunar.a $(LIBSADDED)
 
 htc20b$(EXE): htc20b.cpp liblunar.a
-	$(CC) $(CFLAGS) -o htc20b$(EXE) -DTEST_MAIN htc20b.cpp liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o htc20b$(EXE) -DTEST_MAIN htc20b.cpp liblunar.a $(LIBSADDED)
 
 integrat$(EXE): integrat.o liblunar.a
-	$(CC) $(CFLAGS) -o integrat$(EXE) integrat.o liblunar.a $(LIBSADDED) -L $(INSTALL_DIR)/lib -ljpl
+	$(CC) $(LDFLAGS) $(CFLAGS) -o integrat$(EXE) integrat.o liblunar.a $(LIBSADDED) -L $(INSTALL_DIR)/lib -ljpl
 
 integrat.o: integrat.cpp
 	$(CC) $(CFLAGS) -c -I $(INSTALL_DIR)/include $<
 
 jd$(EXE): jd.o liblunar.a
-	$(CC) $(CFLAGS) -o jd$(EXE) jd.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o jd$(EXE) jd.o liblunar.a $(LIBSADDED)
 
 jevent$(EXE):                    jevent.o liblunar.a
-	$(CC) $(CFLAGS) -o jevent$(EXE) jevent.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o jevent$(EXE) jevent.o liblunar.a $(LIBSADDED)
 
 jpl2b32$(EXE):                    jpl2b32.o
-	$(CC) $(CFLAGS) -o jpl2b32$(EXE) jpl2b32.o $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o jpl2b32$(EXE) jpl2b32.o $(LIBSADDED)
 
 jsattest$(EXE): jsattest.o liblunar.a
-	$(CC) $(CFLAGS) -o jsattest$(EXE) jsattest.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o jsattest$(EXE) jsattest.o liblunar.a $(LIBSADDED)
 
 lun_test$(EXE): lun_test.o lun_tran.o riseset3.o liblunar.a
-	$(CC) $(CFLAGS) -o lun_test$(EXE) lun_test.o lun_tran.o riseset3.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o lun_test$(EXE) lun_test.o lun_tran.o riseset3.o liblunar.a $(LIBSADDED)
 
 marstime$(EXE): marstime.cpp
-	$(CC) $(CFLAGS) -o marstime$(EXE) marstime.cpp -DTEST_PROGRAM $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o marstime$(EXE) marstime.cpp -DTEST_PROGRAM $(LIBSADDED)
 
 mpc2sof$(EXE): mpc2sof.cpp
-	$(CC) $(CFLAGS) -o mpc2sof$(EXE) mpc2sof.cpp mpcorb.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o mpc2sof$(EXE) mpc2sof.cpp mpcorb.o liblunar.a $(LIBSADDED)
 
 mpc_code$(EXE): mpc_code.cpp
-	$(CC) $(CFLAGS) -o mpc_code$(EXE) mpc_code.cpp -DTEST_CODE
+	$(CC) $(LDFLAGS) $(CFLAGS) -o mpc_code$(EXE) mpc_code.cpp -DTEST_CODE
 
 oblitest$(EXE): oblitest.o obliqui2.o liblunar.a
-	$(CC) $(CFLAGS) -o oblitest$(EXE) oblitest.o obliqui2.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o oblitest$(EXE) oblitest.o obliqui2.o liblunar.a $(LIBSADDED)
 
 persian$(EXE): persian.o solseqn.o liblunar.a
-	$(CC) $(CFLAGS) -o persian$(EXE) persian.o solseqn.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o persian$(EXE) persian.o solseqn.o liblunar.a $(LIBSADDED)
 
 phases$(EXE): phases.o liblunar.a
-	$(CC) $(CFLAGS) -o phases$(EXE)   phases.o   liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o phases$(EXE)   phases.o   liblunar.a $(LIBSADDED)
 
 prectest$(EXE): prectest.o liblunar.a
-	$(CC) $(CFLAGS) -o prectest$(EXE) prectest.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o prectest$(EXE) prectest.o liblunar.a $(LIBSADDED)
 
 prectes2$(EXE): prectes2.o liblunar.a
-	$(CC) $(CFLAGS) -o prectes2$(EXE) prectes2.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o prectes2$(EXE) prectes2.o liblunar.a $(LIBSADDED)
 
 ps_1996$(EXE): ps_1996.o liblunar.a
-	$(CC) $(CFLAGS) -o ps_1996$(EXE)   ps_1996.o   liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o ps_1996$(EXE)   ps_1996.o   liblunar.a $(LIBSADDED)
 
 relativi$(EXE): relativi.cpp liblunar.a
-	$(CC) $(CFLAGS) -o relativi$(EXE) -DTEST_CODE relativi.cpp liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o relativi$(EXE) -DTEST_CODE relativi.cpp liblunar.a $(LIBSADDED)
 
 sof$(EXE): sof.cpp
-	$(CC) $(CFLAGS) -DTEST_CODE -o sof$(EXE) sof.cpp -lm liblunar.a
+	$(CC) $(LDFLAGS) $(CFLAGS) -DTEST_CODE -o sof$(EXE) sof.cpp -lm liblunar.a
 
 spline$(EXE): spline.cpp
-	$(CC) $(CFLAGS) -DTEST_CODE -o spline$(EXE) spline.cpp -lm
+	$(CC) $(LDFLAGS) $(CFLAGS) -DTEST_CODE -o spline$(EXE) spline.cpp -lm
 
 ssattest$(EXE): ssattest.o liblunar.a
-	$(CC) $(CFLAGS) -o ssattest$(EXE) ssattest.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o ssattest$(EXE) ssattest.o liblunar.a $(LIBSADDED)
 
 tables$(EXE):                    tables.o riseset3.o liblunar.a
-	$(CC) $(CFLAGS) -o tables$(EXE) tables.o riseset3.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o tables$(EXE) tables.o riseset3.o liblunar.a $(LIBSADDED)
 
 test_ref$(EXE):                    test_ref.o refract.o refract4.o
-	$(CC) $(CFLAGS) -o test_ref$(EXE) test_ref.o refract.o refract4.o $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o test_ref$(EXE) test_ref.o refract.o refract4.o $(LIBSADDED)
 
 testprec$(EXE):                    testprec.o liblunar.a
-	$(CC) $(CFLAGS) -o testprec$(EXE) testprec.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o testprec$(EXE) testprec.o liblunar.a $(LIBSADDED)
 
 uranus1$(EXE): uranus1.o gust86.o
-	$(CC) $(CFLAGS) -o uranus1$(EXE) uranus1.o gust86.o $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o uranus1$(EXE) uranus1.o gust86.o $(LIBSADDED)
 
 utc_test$(EXE):                utc_test.o liblunar.a
-	$(CC) $(CFLAGS) -o utc_test$(EXE) utc_test.o liblunar.a $(LIBSADDED)
+	$(CC) $(LDFLAGS) $(CFLAGS) -o utc_test$(EXE) utc_test.o liblunar.a $(LIBSADDED)
 
