2010-01-21 01:33:02 +01:00
|
|
|
|
|
|
|
###############################################################################
|
|
|
|
# Copyright (C) 2008 Jonathan Moore Liles #
|
|
|
|
# #
|
|
|
|
# This program is free software; you can redistribute it and/or modify it #
|
|
|
|
# under the terms of the GNU General Public License as published by the #
|
|
|
|
# Free Software Foundation; either version 2 of the License, or (at your #
|
|
|
|
# option) any later version. #
|
|
|
|
# #
|
|
|
|
# This program is distributed in the hope that it will be useful, but WITHOUT #
|
|
|
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
|
|
|
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
|
|
|
|
# more details. #
|
|
|
|
# #
|
|
|
|
# You should have received a copy of the GNU General Public License along #
|
|
|
|
# with This program; see the file COPYING. If not,write to the Free Software #
|
|
|
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
|
|
|
|
###############################################################################
|
|
|
|
|
|
|
|
## Makefile for the Non-DAW.
|
|
|
|
|
|
|
|
##
|
|
|
|
## Do not edit this file; run `make config` instead.
|
|
|
|
##
|
|
|
|
|
|
|
|
VERSION := 1.0.0
|
2012-02-29 06:24:51 +01:00
|
|
|
PACKAGE := SESSION_MANAGER
|
2010-01-21 01:33:02 +01:00
|
|
|
|
|
|
|
all: .config
|
|
|
|
|
|
|
|
.config: configure
|
|
|
|
@ echo '<<< Configuring '$(PACKAGE)
|
|
|
|
@ ./configure
|
|
|
|
|
|
|
|
config:
|
|
|
|
@ echo '<<< Configuring '$(PACKAGE)
|
|
|
|
@ ./configure
|
|
|
|
|
|
|
|
-include .config
|
|
|
|
|
|
|
|
export SYSTEM_PATH:=$(prefix)/share/
|
|
|
|
export DOCUMENT_PATH:=$(prefix)/share/doc/
|
|
|
|
export PIXMAP_PATH:=$(prefix)/share/pixmaps/
|
2012-02-29 06:24:51 +01:00
|
|
|
export ICON_PATH:=$(prefix)/share/icons/
|
|
|
|
export DESKTOP_PATH:=$(prefix)/share/applications/
|
2010-01-21 01:33:02 +01:00
|
|
|
|
|
|
|
# a bit of a hack to make sure this runs before any rules
|
|
|
|
ifneq ($(CALCULATING),yes)
|
|
|
|
TOTAL := $(shell $(MAKE) CALCULATING=yes -n 2>/dev/null | sed -n 's/^.*Compiling: \([^"]\+\)"/\1/p' > .files )
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(USE_DEBUG),yes)
|
|
|
|
CFLAGS := -pipe -ggdb -fno-inline -Wall -Wextra -O0
|
|
|
|
CXXFLAGS := -Wnon-virtual-dtor -Wno-missing-field-initializers -fno-rtti -fno-exceptions
|
|
|
|
else
|
|
|
|
CFLAGS := -pipe -O2 -DNDEBUG
|
|
|
|
CXXFLAGS := -fno-rtti -fno-exceptions
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
CFLAGS+=-DVERSION=\"$(VERSION)\" \
|
|
|
|
-DINSTALL_PREFIX=\"$(prefix)\" \
|
|
|
|
-DSYSTEM_PATH=\"$(SYSTEM_PATH)\" \
|
|
|
|
-DDOCUMENT_PATH=\"$(DOCUMENT_PATH)\" \
|
|
|
|
-DPIXMAP_PATH=\"$(PIXMAP_PATH)\"
|
|
|
|
|
|
|
|
CXXFLAGS := $(CFLAGS) $(CXXFLAGS)
|
|
|
|
|
|
|
|
INCLUDES := -I. -Iutil -IFL -Inonlib
|
|
|
|
|
|
|
|
include scripts/colors
|
|
|
|
|
|
|
|
ifneq ($(CALCULATING),yes)
|
|
|
|
COMPILING="$(BOLD)$(BLACK)${PACKAGE} [$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) $(BOLD)$(YELLOW)$<$(SGR0)"
|
|
|
|
else
|
|
|
|
COMPILING="Compiling: $<"
|
|
|
|
endif
|
|
|
|
|
|
|
|
.C.o:
|
|
|
|
@ echo $(COMPILING)
|
|
|
|
@ $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
|
|
|
|
|
|
|
|
%.C : %.fl
|
|
|
|
@ cd `dirname $<` && fluid -c ../$<
|
|
|
|
|
|
|
|
DONE := $(BOLD)$(GREEN)done$(SGR0)
|
|
|
|
|
|
|
|
include FL/makefile.inc
|
|
|
|
#include nonlib/makefile.inc
|
|
|
|
include makefile.inc
|
|
|
|
|
|
|
|
SRCS:=$(Session_SRCS)
|
|
|
|
OBJS:=$(Session_OBJS)
|
2012-02-26 02:22:42 +01:00
|
|
|
CXXFLAGS += $(Session_CFLAGS)
|
2010-01-21 01:33:02 +01:00
|
|
|
|
|
|
|
# FIXME: isn't there a better way?
|
|
|
|
$(OBJS): .config Makefile
|
|
|
|
|
|
|
|
TAGS: $(SRCS)
|
|
|
|
etags $(SRCS)
|
|
|
|
|
|
|
|
.deps: .config $(SRCS)
|
|
|
|
ifneq ($(CALCULATING),yes)
|
|
|
|
@ echo -n Calculating dependencies...
|
|
|
|
@ makedepend -f- -- $(CXXFLAGS) $(INCLUDES) -- $(SRCS) 2>/dev/null > .deps && echo $(DONE)
|
|
|
|
@ # gcc -M $(CXXFLAGS) $(INCLUDES) $(SRCS) > .deps && echo $(DONE)
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
install: all
|
|
|
|
@ echo -n "Installing..."
|
2012-02-29 06:24:51 +01:00
|
|
|
@ install src/nsmd "$(DESTDIR)$(prefix)"/bin/nsmd
|
|
|
|
@ install src/session-manager "$(DESTDIR)$(prefix)"/bin/non-session-manager
|
|
|
|
@ mkdir -p "$(DESTDIR)$(SYSTEM_PATH)"/non-session-manager
|
|
|
|
@ $(MAKE) -s -C doc install
|
|
|
|
@ install -d "$(DESTDIR)$(PIXMAP_PATH)/non-session-manager"
|
|
|
|
@ install -m 644 icons/hicolor/256x256/apps/non-session-manager.png "$(DESTDIR)$(PIXMAP_PATH)"/non-session-manager/icon-256x256.png
|
|
|
|
@ install -d "$(DESTDIR)$(ICON_PATH)/hicolor"
|
|
|
|
@ cp -au icons/hicolor/ "$(DESTDIR)$(ICON_PATH)"
|
|
|
|
@ install -d "$(DESTDIR)$(DESKTOP_PATH)"
|
|
|
|
@ sed 's:@BIN_PATH@:$(prefix)/bin:' non-session-manager.desktop.in > "$(DESTDIR)$(DESKTOP_PATH)/non-session-manager.desktop"
|
2010-01-21 01:33:02 +01:00
|
|
|
@ echo "$(DONE)"
|
|
|
|
ifneq ($(USE_DEBUG),yes)
|
|
|
|
@ echo -n "Stripping..."
|
2012-02-29 06:24:51 +01:00
|
|
|
@ strip "$(DESTDIR)$(prefix)"/bin/nsmd
|
|
|
|
@ strip "$(DESTDIR)$(prefix)"/bin/non-session-manager
|
2010-01-21 01:33:02 +01:00
|
|
|
@ echo "$(DONE)"
|
|
|
|
endif
|
|
|
|
|
|
|
|
clean_deps:
|
|
|
|
@ rm -f .deps
|
|
|
|
|
|
|
|
.PHONEY: clean config depend clean_deps
|
|
|
|
|
2012-02-29 06:24:51 +01:00
|
|
|
clean: Session_clean
|
2010-01-21 01:33:02 +01:00
|
|
|
|
|
|
|
dist:
|
|
|
|
git archive --prefix=non-session-$(VERSION)/ v$(VERSION) | bzip2 > non-session-$(VERSION).tar.bz2
|
|
|
|
|
|
|
|
scan-gpl:
|
|
|
|
@ scripts/scan-gpl $(SRCS) || echo $(BOLD)$(RED)Some source files do not contain proper license information!
|
|
|
|
|
|
|
|
-include .deps
|