Create static library in Makefile

feature/19
Daniel Warner 2011-04-23 12:13:06 +00:00
parent 3df6db72d2
commit 13d5e5f8f4
3 changed files with 21 additions and 9 deletions

View File

@ -2,6 +2,7 @@ syntax: glob
Release\* Release\*
Debug\* Debug\*
*.o *.o
sat RunTest
*.txt *.txt
*.orig *.orig
*.a

View File

@ -1,26 +1,36 @@
CC=g++ CC=g++
AR=ar
CFLAGS=-c -Wall -O2 CFLAGS=-c -Wall -O2
LDFLAGS= LDFLAGS=
SOURCES=Coord.cpp \
SOURCES=CoordGeodetic.cpp \
CoordTopographic.cpp \
Eci.cpp \ Eci.cpp \
Globals.cpp \ Globals.cpp \
Julian.cpp \ Julian.cpp \
Observer.cpp \ Observer.cpp \
SGP4.cpp \ SGP4.cpp \
SatelliteOrbit.cpp \
Timespan.cpp \ Timespan.cpp \
Tle.cpp \ Tle.cpp \
Vector.cpp \ Vector.cpp
main.cpp
OBJECTS=$(SOURCES:.cpp=.o) OBJECTS=$(SOURCES:.cpp=.o)
EXECUTABLE=sat SGP4LIB=libsgp4.a
all: $(SOURCES) $(EXECUTABLE) TESTPROG=RunTest
TESTSOURCES=RunTest.cpp
TESTOBJECTS=$(TESTSOURCES:.cpp=.o)
$(EXECUTABLE): $(OBJECTS) all: $(SGP4LIB) ${TESTPROG}
$(CC) $(LDFLAGS) $(OBJECTS) -o $@
${SGP4LIB}: ${OBJECTS}
${AR} -rcs -o $@ ${OBJECTS}
${TESTPROG}: ${SGP4LIB} ${TESTOBJECTS}
$(CC) ${TESTOBJECTS} $(LDFLAGS) -static -L. -lsgp4 -o $@
.cpp.o: .cpp.o:
$(CC) $(CFLAGS) $< -o $@ $(CC) $(CFLAGS) $< -o $@
clean: clean:
rm -rf *.o $(EXECUTABLE) rm -rf *.o ${SGP4LIB} ${TESTPROG}

View File

@ -12,6 +12,7 @@
#include <iostream> #include <iostream>
#include <fstream> #include <fstream>
#include <vector> #include <vector>
#include <cstdlib>
void RunTle(Tle tle, double start, double end, double inc) { void RunTle(Tle tle, double start, double end, double inc) {
double current = start; double current = start;