finalcut/src/Makefile.gcc

130 lines
3.1 KiB
Makefile
Raw Normal View History

2015-05-23 13:35:12 +02:00
#-----------------------------------------------------------------------------
# Makefile for Final Cut
#-----------------------------------------------------------------------------
# This is where make install will install the library
LIBDIR = /usr/local/lib64
INCLUDEDIR = /usr/local/include/final
INCLUDE_HEADERS = fapp.h \
fbuttongroup.h \
fbutton.h \
fcheckbox.h \
fdialog.h \
fevent.h \
ffiledialog.h \
final.h \
flabel.h \
flineedit.h \
flistbox.h \
fmessagebox.h \
fobject.h \
foptimove.h \
fpoint.h \
fprogressbar.h \
fradiobutton.h \
frect.h \
fscrollbar.h \
fstatusbar.h \
fstring.h \
fterm.h \
ftextview.h \
ftogglebutton.h \
fwidget.h \
fwindow.h
# compiler parameter
CXX = g++
CCXFLAGS = $(OPTIMIZE) $(PROFILE) $(DEBUG) $(GPM) -march=x86-64 -frtti -fexceptions
MAKEFILE = -f Makefile.gcc
LDFLAGS = $(TERMCAP) -lgpm
INCLUDES = -I./
GPM = -D HAVE_LIBGPM
RM = rm -f
LIB = libfinal.so
OBJS = fstring.o \
fpoint.o \
frect.o \
fscrollbar.o \
fprogressbar.o \
flineedit.o \
fbutton.o \
fbuttongroup.o \
ftogglebutton.o \
fradiobutton.o \
fcheckbox.o \
flabel.o \
flistbox.o \
fdialog.o \
fwindow.o \
fmessagebox.o \
ffiledialog.o \
ftextview.o \
fstatusbar.o \
fterm.o \
fevent.o \
foptimove.o \
fapp.o \
fwidget.o \
fobject.o
TERMCAP := $(shell test -n "$$(ldd {/usr,}/lib64/libncursesw.so.5 2>/dev/null | grep libtinfo)" && echo "-ltinfo" || echo "-lncurses")
ifdef DEBUG
OPTIMIZE = -O0
else
OPTIMIZE = -O2
endif
.SUFFIXES: .cpp
# $@ = name of the targets
# $< = the first dependency
.cpp.o:
$(CXX) -c $(CCXFLAGS) -fpic -o $@ $<
all: dep $(OBJS)
$(CXX) $(CCXFLAGS) $(INCLUDES) $(LDFLAGS) -shared -Wl,-soname,$(LIB).0 -o $(LIB).0.1.0 $(OBJS)
ln -s -f $(LIB).0.1.0 libfinal.so.0
ln -s -f $(LIB).0 libfinal.so
$(LIB): all
debug:
$(MAKE) $(MAKEFILE) DEBUG="-g -D DEBUG -W -Wall -pedantic"
profile:
$(MAKE) $(MAKEFILE) PROFILE="-pg"
install: $(LIB)
mkdir -p $(LIBDIR)
install -c $(LIB).0.1.0 $(LIBDIR)/$(LIB).0.1.0
ln -s -f $(LIB).0.1.0 $(LIBDIR)/libfinal.so.0
ln -s -f $(LIB).0 $(LIBDIR)/libfinal.so
ldconfig
mkdir -p $(INCLUDEDIR)
@list='$(INCLUDE_HEADERS)'; for h in $$list; \
do \
install -m 644 $$h $(INCLUDEDIR)/$$h; \
done
uninstall: $(INCLUDE_HEADERS)
$(RM) $(LIBDIR)/$(LIB).0.1.0 $(LIBDIR)/libfinal.so.0 $(LIBDIR)/libfinal.so
@list='$(INCLUDE_HEADERS)'; for h in $$list; \
do \
$(RM) $(INCLUDEDIR)/$$h; \
done
rmdir $(INCLUDEDIR)
.PHONY: clean dep
clean:
$(RM) $(LIB)* $(OBJS) .depend *.prof *~
dep:
$(CXX) -MM *.cpp >.depend
#
# include .depend if it exists
#
-include .depend