mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
ae2c132a26
First try if Google Sat is already installed as a provider (and just use it if it is). Then use the executable path to make an educated guess where these files might be found as part of Subsurface. We now install the necessary directory tree under $(DESTDIR)/usr/share/subsurface/marbledata Still far from perfect - but this should work at least on Linux. MacOS will need a different modifier for the path and Windows I haven't even thought about, yet. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
132 lines
3.2 KiB
Makefile
132 lines
3.2 KiB
Makefile
NAME = subsurface
|
|
CAPITALIZED_NAME = Subsurface
|
|
TARGET = $(NAME)
|
|
|
|
include Configure.mk
|
|
VERSION=3.1
|
|
|
|
CC=gcc
|
|
CFLAGS=-Wall -Wno-pointer-sign -g $(CLCFLAGS) -DGSEAL_ENABLE
|
|
CXX=g++
|
|
CXXFLAGS=-Wall -g $(CLCXXFLAGS) $(MARBLEFLAGS)
|
|
INSTALL=install
|
|
|
|
# these locations seem to work for SuSE and Fedora
|
|
# prefix = $(HOME)
|
|
prefix = $(DESTDIR)/usr
|
|
BINDIR = $(prefix)/bin
|
|
DATADIR = $(prefix)/share
|
|
DESKTOPDIR = $(DATADIR)/applications
|
|
ICONPATH = $(DATADIR)/icons/hicolor
|
|
ICONDIR = $(ICONPATH)/scalable/apps
|
|
MANDIR = $(DATADIR)/man/man1
|
|
XSLTDIR = $(DATADIR)/$(NAME)/xslt
|
|
MARBLEDIR = marbledata/maps/earth/googlesat
|
|
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(ICONPATH)
|
|
|
|
ICONFILE = $(NAME)-icon.svg
|
|
DESKTOPFILE = $(NAME).desktop
|
|
MANFILES = $(NAME).1
|
|
XSLTFILES = xslt/*.xslt xslt/*.xsl
|
|
|
|
EXTRA_FLAGS = $(QTCXXFLAGS) $(GTKCFLAGS) $(GLIB2CFLAGS) $(XML2CFLAGS) \
|
|
$(LIBDIVECOMPUTERCFLAGS) \
|
|
$(LIBSOUPCFLAGS) $(GCONF2CFLAGS)
|
|
|
|
HEADERS = \
|
|
qt-ui/divelistview.h \
|
|
qt-ui/maintab.h \
|
|
qt-ui/mainwindow.h \
|
|
qt-ui/models.h \
|
|
qt-ui/plotareascene.h \
|
|
qt-ui/starwidget.h \
|
|
qt-ui/modeldelegates.h \
|
|
qt-ui/profilegraphics.h \
|
|
qt-ui/globe.h \
|
|
qt-ui/kmessagewidget.h \
|
|
qt-ui/downloadfromdivecomputer.h \
|
|
qt-ui/preferences.h \
|
|
|
|
|
|
SOURCES = \
|
|
deco.c \
|
|
device.c \
|
|
dive.c \
|
|
divelist.c \
|
|
equipment.c \
|
|
file.c \
|
|
info.c \
|
|
main.c \
|
|
parse-xml.c \
|
|
profile.c \
|
|
save-xml.c \
|
|
sha1.c \
|
|
statistics.c \
|
|
time.c \
|
|
libdivecomputer.c \
|
|
qt-gui.cpp \
|
|
qt-ui/divelistview.cpp \
|
|
qt-ui/maintab.cpp \
|
|
qt-ui/mainwindow.cpp \
|
|
qt-ui/models.cpp \
|
|
qt-ui/plotareascene.cpp \
|
|
qt-ui/starwidget.cpp \
|
|
qt-ui/modeldelegates.cpp \
|
|
qt-ui/profilegraphics.cpp \
|
|
qt-ui/globe.cpp \
|
|
qt-ui/kmessagewidget.cpp \
|
|
qt-ui/downloadfromdivecomputer.cpp \
|
|
qt-ui/preferences.cpp \
|
|
$(RESFILE)
|
|
|
|
|
|
RESOURCES = $(NAME).qrc
|
|
|
|
ifneq ($(SQLITE3FLAGS),)
|
|
EXTRA_FLAGS += -DSQLITE3 $(SQLITE3FLAGS)
|
|
endif
|
|
ifneq ($(ZIPFLAGS),)
|
|
EXTRA_FLAGS += -DLIBZIP $(ZIPFLAGS)
|
|
endif
|
|
ifneq ($(strip $(LIBXSLT)),)
|
|
EXTRA_FLAGS += -DXSLT='"$(XSLTDIR)"' $(XSLCFLAGS)
|
|
endif
|
|
ifeq ($(USE_GTK_UI),1)
|
|
ifneq ($(strip $(LIBOSMGPSMAP)),)
|
|
SOURCES += gps.c
|
|
EXTRA_FLAGS += -DHAVE_OSM_GPS_MAP $(OSMGPSMAPFLAGS)
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter $(UNAME),linux kfreebsd gnu))
|
|
SOURCES += linux.c
|
|
else ifeq ($(UNAME), darwin)
|
|
SOURCES += macos.c
|
|
MACOSXINSTALL = /Applications/$(CAPITALIZED_NAME).app
|
|
MACOSXFILES = packaging/macosx
|
|
MACOSXSTAGING = $(MACOSXFILES)/$(CAPITALIZED_NAME).app
|
|
INFOPLIST = $(MACOSXFILES)/Info.plist
|
|
INFOPLISTINPUT = $(INFOPLIST).in
|
|
LDFLAGS += -headerpad_max_install_names
|
|
else
|
|
SOURCES += windows.c
|
|
WINDOWSSTAGING = ./packaging/windows
|
|
WINMSGDIRS=$(addprefix share/locale/,$(shell ls po/*.po | sed -e 's/po\/\(..\)_.*/\1\/LC_MESSAGES/'))
|
|
NSIINPUTFILE = $(WINDOWSSTAGING)/$(NAME).nsi.in
|
|
NSIFILE = $(WINDOWSSTAGING)/$(NAME).nsi
|
|
MAKENSIS = makensis
|
|
XSLTDIR = .\\xslt
|
|
endif
|
|
|
|
LIBS = $(LIBQT) $(LIBXML2) $(LIBXSLT) $(LIBSQLITE3) $(LIBGCONF2) $(LIBDIVECOMPUTER) \
|
|
$(EXTRALIBS) $(LIBZIP) -lpthread -lm $(LIBOSMGPSMAP) $(LIBSOUP) $(LIBWINSOCK) $(MARBLELIBS)
|
|
|
|
MSGLANGS=$(notdir $(wildcard po/*.po))
|
|
|
|
# Add files to the following variables if the auto-detection based on the
|
|
# filename fails
|
|
OBJS_NEEDING_MOC =
|
|
OBJS_NEEDING_UIC =
|
|
HEADERS_NEEDING_MOC =
|
|
|
|
include Rules.mk
|