aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorDavid <dbphillipsnz@gmail.com>2014-06-05 17:49:36 +1200
committerDavid <dbphillipsnz@gmail.com>2014-06-05 17:49:36 +1200
commit0a915305a6481f3b9553511376358ab81a51724c (patch)
tree62c19cd0b68f6d5bfd9a3105858d85b84b88b44a /Makefile
downloadparamano-0a915305a6481f3b9553511376358ab81a51724c.tar.xz
Clean-ups
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile149
1 files changed, 149 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..5bed254
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,149 @@
+# Tabsize: 4
+
+# Build utils
+MAKE = make
+CC = gcc
+
+# Directories
+PREFIX=/usr
+BINDIR=$(PREFIX)/bin
+SYSCONFDIR=/etc
+SHAREDIR=$(PREFIX)/share
+LOCALEDIR=$(SHAREDIR)/locale
+
+# External program/support programs
+SUDO=$(BINDIR)/sudo
+TRAYFREQ_SET=$(BINDIR)/trayfreq-set
+
+# Misc
+TRAYFREQ_CONF=$(SYSCONFDIR)/trayfreq.conf
+ROOT_UID=0
+
+
+ifdef DEBUG
+ EXTRA_CFLAGS+=-DDEBUG
+endif
+
+EXTRA_CFLAGS+= -DPREFIX=\"$(PREFIX)\" \
+ -DBINDIR=\"$(BINDIR)\" \
+ -DSUDO=\"$(SUDO)\" \
+ -DTRAYFREQ_SET=\"$(TRAYFREQ_SET)\" \
+ -DTRAYFREQ_CONF=\"$(TRAYFREQ_CONF)\" \
+ -DLOCALEDIR=\"$(LOCALEDIR)\" \
+ -DSHAREDIR=\"$(SHAREDIR)\" \
+ -DROOT_UID=$(ROOT_UID)
+
+
+DEPS = bat_tray.h \
+ common.h \
+ config_file.h \
+ defaults.h \
+ getcore.h \
+ getfreq.h \
+ getgov.h \
+ reload.h \
+ trayfreq.h \
+ tray.h \
+ trayfreq_set_interface.h
+
+CFLAGS = -I/usr/include/gtk-2.0 \
+ -I/usr/lib/gtk-2.0/include \
+ -I/usr/include/pango-1.0 \
+ -I/usr/include/cairo \
+ -I/usr/include/gdk-pixbuf-2.0 \
+ -I/usr/include/atk-1.0 \
+ -I/usr/include/glib-2.0 \
+ -I/usr/lib/glib-2.0/include \
+ -Wall \
+ -D_=gettext
+
+LDFLAGS = -lgtk-3 \
+ -lgobject-2.0 \
+ -lglib-2.0
+########################################################################
+# Make entire suite
+all: trayfreq trayfreq-set lang trayfreq.conf
+########################################################################
+
+
+########################################################################
+# Make main trayfreq system tray program
+trayfreq: bat_tray.o \
+ common.o \
+ config_file.o \
+ defaults.o \
+ getcore.o \
+ getfreq.o \
+ getgov.o \
+ reload.o \
+ trayfreq.o \
+ tray.o \
+ trayfreq_set_interface.o
+ $(CC) -o $@ $? $(LDFLAGS)
+
+########################################################################
+# Make trayfreq-set utility
+trayfreq-set: \
+ trayfreq_set.o \
+ getcore.o \
+ getfreq.o \
+ getgov.o
+
+ $(CC) -o $@ $? $(LDFLAGS)
+########################################################################
+
+
+########################################################################
+%.o: %.c $(DEPS)
+ $(CC) -c -o $@ $< $(CFLAGS) $(EXTRA_CFLAGS)
+########################################################################
+
+
+########################################################################
+# Make language file(s)
+lang:
+ msgfmt -c -o lc/fr.mo lc/fr.po
+########################################################################
+
+
+########################################################################
+# Prepare template config file
+trayfreq.conf:
+ sed -e 's:SHAREDIR:$(SHAREDIR):g' \
+ -e 's:TRAYFREQ_CONF:$(TRAYFREQ_CONF):g' \
+ trayfreq.conf.src > trayfreq.conf
+########################################################################
+
+
+########################################################################
+# Strip all symbols from binaries
+strip:
+ strip -s trayfreq trayfreq-set
+
+########################################################################
+
+
+########################################################################
+# Remove generated files
+clean:
+ rm -f trayfreq trayfreq-set *.o lc/*.mo trayfreq.conf
+########################################################################
+
+
+########################################################################
+# Install entire suite
+install:
+ mkdir -p $(DESTDIR)/$(SHAREDIR)/trayfreq/
+ cp -r themes $(DESTDIR)/$(SHAREDIR)/trayfreq/
+
+ install -Dm 644 lc/fr.mo $(DESTDIR)/$(LOCALEDIR)/fr/LC_MESSAGES/trayfreq.mo
+
+ install -Dm 644 trayfreq.conf $(DESTDIR)/etc/trayfreq.conf
+ install -Dm 644 trayfreq.desktop $(DESTDIR)/etc/xdg/autostart/trayfreq.desktop
+
+ install -Dm 755 trayfreq $(DESTDIR)/$(BINDIR)/trayfreq
+ install -Dm 755 trayfreq-set $(DESTDIR)/$(BINDIR)/trayfreq-set
+
+ ln -s ../licenses/common/GLPv3/license.txt $(DESTDIR)/$(SHAREDIR)/trayfreq/LICENCE
+ ln -s ../../../etc/trayfreq.conf $(DESTDIR)/$(SHAREDIR)/trayfreq/trayfreq.conf
+########################################################################