47 lines
1.6 KiB
Makefile
47 lines
1.6 KiB
Makefile
# Makefile.sbo: sane Makefile for levmar on Slackware
|
|
# dbs 2017-03-15
|
|
|
|
# Get these from Makefile.so
|
|
MAJ=2
|
|
MIN=2
|
|
|
|
ODIR=build
|
|
|
|
CONFIGFLAGS=-ULINSOLVERS_RETAIN_MEMORY
|
|
BUILDFLAGS=-funroll-loops -Wall $(CONFIGFLAGS) $(CFLAGS)
|
|
|
|
LIBOBJS=$(ODIR)/lm.o $(ODIR)/Axb.o $(ODIR)/misc.o $(ODIR)/lmlec.o $(ODIR)/lmbc.o $(ODIR)/lmblec.o $(ODIR)/lmbleic.o
|
|
LIBSRCS=lm.c Axb.c misc.c lmlec.c lmbc.c lmblec.c lmbleic.c
|
|
|
|
LAPACKLIBS=-llapack -lblas
|
|
LIBS=$(LAPACKLIBS) -lm
|
|
|
|
$(ODIR)/liblevmar.so.$(MAJ).$(MIN): $(LIBOBJS)
|
|
$(CC) -shared -Wl,-soname,liblevmar.so.$(MAJ) -o $(ODIR)/liblevmar.so.$(MAJ).$(MIN) $(LIBS) $(LIBOBJS)
|
|
|
|
$(ODIR)/%.o : %.c
|
|
$(CC) $(BUILDFLAGS) -c $< -o $@
|
|
|
|
$(ODIR)/lm.o: lm.c lm_core.c levmar.h misc.h compiler.h
|
|
$(ODIR)/Axb.o: Axb.c Axb_core.c levmar.h misc.h
|
|
$(ODIR)/misc.o: misc.c misc_core.c levmar.h misc.h
|
|
$(ODIR)/lmlec.o: lmlec.c lmlec_core.c levmar.h misc.h
|
|
$(ODIR)/lmbc.o: lmbc.c lmbc_core.c levmar.h misc.h compiler.h
|
|
$(ODIR)/lmblec.o: lmblec.c lmblec_core.c levmar.h misc.h
|
|
$(ODIR)/lmbleic.o: lmbleic.c lmbleic_core.c levmar.h misc.h
|
|
|
|
clean:
|
|
@rm -f $(LIBOBJS)
|
|
|
|
cleanall: clean
|
|
@rm -f $(ODIR)/liblevmar.so.$(MAJ).$(MIN)
|
|
|
|
depend:
|
|
makedepend -f Makefile $(LIBSRCS)
|
|
|
|
install: $(ODIR)/liblevmar.so.$(MAJ).$(MIN)
|
|
install -Dpm 644 levmar.h $(DESTDIR)/usr/include/levmar/levmar.h
|
|
install -Dpm 755 build/liblevmar.so.$(MAJ).$(MIN) $(DESTDIR)/usr/lib$(LIB_SUFFIX)/liblevmar.so.$(MAJ).$(MIN)
|
|
ln -rs $(DESTDIR)/usr/lib$(LIB_SUFFIX)/liblevmar.so.$(MAJ).$(MIN) $(DESTDIR)/usr/lib$(LIB_SUFFIX)/liblevmar.so.$(MAJ)
|
|
ln -rs $(DESTDIR)/usr/lib$(LIB_SUFFIX)/liblevmar.so.$(MAJ).$(MIN) $(DESTDIR)/usr/lib$(LIB_SUFFIX)/liblevmar.so
|