summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.am38
-rwxr-xr-xbootstrap.sh46
-rw-r--r--configure.ac77
-rw-r--r--src/Makefile46
-rw-r--r--src/Makefile.am24
5 files changed, 185 insertions, 46 deletions
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..574c2fd
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,38 @@
+# $Id$
+#
+# This file is part of heatload.
+#
+# heatload 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.
+#
+# heatload 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 heatload; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+EXTRA_DIST = bootstrap.sh README LICENSE
+SUBDIRS=src #doc
+
+MAINTAINERCLEANFILES=README
+noinst_DATA = README
+
+README:
+ rm -f README
+ touch README
+# $(MAKE) -C doc README
+# cd $(srcdir) && ln -s doc/README README
+
+homepage: all dist doxygen
+ test -d $$HOME/homepage/private
+ mkdir -p $$HOME/homepage/private/projects/heatload
+ cp heatload-@PACKAGE_VERSION@.tar.gz doc/README.html doc/style.css $$HOME/homepage/private/projects/heatload
+ ln -sf README.html $$HOME/homepage/private/projects/heatload/index.html
+
+.PHONY: homepage
diff --git a/bootstrap.sh b/bootstrap.sh
new file mode 100755
index 0000000..3ccb697
--- /dev/null
+++ b/bootstrap.sh
@@ -0,0 +1,46 @@
+#!/bin/bash
+# $Id$
+
+# This file is part of heatload.
+#
+# heatload 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.
+#
+# heatload 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 heatload; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+run_versioned() {
+ local P
+ type -p "$1-$2" &> /dev/null && P="$1-$2" || local P="$1"
+
+ shift 2
+ "$P" "$@"
+}
+
+if [ "x$1" = "xam" ] ; then
+ set -ex
+ run_versioned automake 1.8 -a -c --foreign
+ ./config.status
+else
+ set -ex
+
+ rm -rf autom4te.cache
+ rm -f config.cache
+
+ run_versioned aclocal 1.8
+ autoheader
+ run_versioned automake 1.8 -a -c --foreign
+ autoconf -Wall
+
+ CFLAGS="-g -O0" ./configure --sysconfdir=/etc "$@"
+
+ make clean
+fi
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..3e0898c
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,77 @@
+# -*- Autoconf -*-
+# Process this file with autoconf to produce a configure script.
+
+# $Id$
+
+# This file is part of heatload.
+#
+# heatload 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.
+#
+# heatload 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 heatload; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+AC_PREREQ(2.59)
+AC_INIT([heatload],[0.3],[mzurngybnq (at) 0pointer (dot) de])
+AC_CONFIG_SRCDIR([src/heatload.cc])
+AC_CONFIG_HEADERS([config.h])
+AM_INIT_AUTOMAKE([foreign -Wall])
+
+AC_SUBST(PACKAGE_URL, [http://0pointer.de/lennart/projects/heatload/])
+
+if type -p stow > /dev/null && test -d /usr/local/stow ; then
+ AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
+ ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
+fi
+
+# Checks for programs.
+AC_PROG_CC
+AC_PROG_CXX
+AC_PROG_CPP
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+# If using GCC specify some additional parameters
+if test "x$GCC" = "xyes" ; then
+ CFLAGS="$CFLAGS -pipe -W -Wall -pedantic"
+ CXXFLAGS="$CXXFLAGS -pipe -W -Wall"
+
+ AC_LANG_CONFTEST([int main() {}])
+ $CC -c conftest.c -std=c99 -Wno-unused-parameter $CFLAGS > /dev/null 2> /dev/null && CFLAGS="$CFLAGS -std=c99 -Wno-unused-parameter"
+ rm -f conftest.o
+fi
+
+PKG_CHECK_MODULES(GTKMM, [ gtkmm-2.4 ])
+AC_SUBST(GTKMM_CFLAGS)
+AC_SUBST(GTKMM_LIBS)
+
+# LYNX documentation generation
+AC_ARG_ENABLE(lynx,
+ AS_HELP_STRING(--disable-lynx,Turn off lynx usage for documentation generation),
+[case "${enableval}" in
+ yes) lynx=yes ;;
+ no) lynx=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --disable-lynx) ;;
+esac],[lynx=yes])
+
+if test x$lynx = xyes ; then
+ AC_CHECK_PROG(have_lynx, lynx, yes, no)
+
+ if test x$have_lynx = xno ; then
+ AC_MSG_WARN([*** lynx not found, plain text README will not be built ***])
+ fi
+fi
+
+AM_CONDITIONAL([USE_LYNX], [test "x$lynx" = xyes])
+
+AC_CONFIG_FILES([Makefile src/Makefile]) # doc/Makefile doc/README.html])
+AC_OUTPUT
diff --git a/src/Makefile b/src/Makefile
deleted file mode 100644
index 2f96dd2..0000000
--- a/src/Makefile
+++ /dev/null
@@ -1,46 +0,0 @@
-VERSION=0.3
-CXXFLAGS=-Wall -W -pipe -O2 -g -DVERSION=\"$(VERSION)\" `pkg-config --cflags gtkmm-2.4 gdkmm-2.4`
-TAR=heatload-$(VERSION).tar.gz
-SOURCES=heatload.cc
-BINARY=heatload
-LIBS=`pkg-config --libs gtkmm-2.4 gdkmm-2.4`
-PACKAGE=heatload
-
-all: $(BINARY)
-
-$(BINARY): $(SOURCES)
- $(CXX) $(CXXFLAGS) $(SOURCES) -o $(BINARY) $(LIBS)
-
-strip: $(BINARY)
- @du -h $(BINARY)
- strip -s $(BINARY)
- @du -h $(BINARY)
-
-clean:
- rm -f $(BINARY)
- rm -f *~ *.bak *.tar.gz
-
-install: strip
- install -g root -o root -m 555 $(BINARY) /usr/local/bin
-
-deinstall:
- rm -f /usr/local/bin/$(BINARY)
-
-README: README.in
- sed s/VERSION/$(VERSION)/ < README.in > README
-
-index.html: README
- txt2html -t "$(PACKAGE) $(VERSION)" < README > index.html
-
-html: index.html
-
-$(TAR): clean README
- tar -C.. --exclude=$(PACKAGE)/$(TAR) -czvf $(TAR) $(PACKAGE)
-
-tar: $(TAR)
-
-web: $(TAR) README
- cp README $(TAR) ../../homepage/lennart/projects/$(PACKAGE)/ && $(MAKE) -C ../../homepage/lennart/projects/$(PACKAGE)
-
-upload: web
- $(MAKE) -C ../../homepage/lennart upload
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644
index 0000000..e6818a8
--- /dev/null
+++ b/src/Makefile.am
@@ -0,0 +1,24 @@
+# $Id$
+#
+# This file is part of heatload.
+#
+# heatload 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.
+#
+# heatload 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 heatload; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+bin_PROGRAMS = heatload
+
+heatload_SOURCES = heatload.cc
+heatload_CXXFLAGS = $(AM_CXXFLAGS) $(GTKMM_CFLAGS)
+heatload_LDADD = $(AM_LDADD) $(GTKMM_LIBS)