From d58d696dc071f67be51cf616ae21c71be47b3e0a Mon Sep 17 00:00:00 2001 From: David Thompson Date: Wed, 9 Dec 2015 08:45:02 -0500 Subject: Autotoolify. --- .gitignore | 12 ++++++++++++ Makefile.am | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ bootstrap | 3 +++ configure.ac | 33 ++++++++++++++++++++++++++++++++ pre-inst-env.in | 32 +++++++++++++++++++++++++++++++ 5 files changed, 139 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile.am create mode 100755 bootstrap create mode 100644 configure.ac create mode 100644 pre-inst-env.in diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd846ef --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +/Makefile +/Makefile.in +/aclocal.m4 +/autom4te.cache/ +/build-aux/ +/config.log +/config.status +/configure +/pre-inst-env +*.go +*.log +*.trs diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..92457bd --- /dev/null +++ b/Makefile.am @@ -0,0 +1,59 @@ +# guile-websocket --- WebSocket client/server +# Copyright © 2015 David Thompson +# +# This file is part of guile-websocket. +# +# Guile-websocket is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# Guile-websocket 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with guile-websocket. If not, see +# . + +GOBJECTS = $(SOURCES:%.scm=%.go) + +nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES) +nobase_go_DATA = $(GOBJECTS) + +# Make sure source files are installed first, so that the mtime of +# installed compiled files is greater than that of installed source +# files. See +# +# for details. +guile_install_go_files = install-nobase_goDATA +$(guile_install_go_files): install-nobase_modDATA + +CLEANFILES = $(GOBJECTS) +EXTRA_DIST = $(SOURCES) $(NOCOMP_SOURCES) +GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat +SUFFIXES = .scm .go +.scm.go: + $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_WARNINGS) -o "$@" "$<" + +moddir=$(prefix)/share/guile/site/2.0 +godir=$(libdir)/guile/2.0/ccache + +SOURCES = \ + web/socket/base64.scm \ + web/socket/sha-1.scm \ + web/socket/frame.scm \ + web/socket/server.scm + +TESTS = \ + tests/frame.scm + +TEST_EXTENSIONS = .scm +SCM_LOG_COMPILER = $(top_builddir)/pre-inst-env $(GUILE) +AM_SCM_LOG_FLAGS = --no-auto-compile -L "$(top_srcdir)" + +EXTRA_DIST += \ + pre-inst-env.in \ + README \ + guix.scm diff --git a/bootstrap b/bootstrap new file mode 100755 index 0000000..872167c --- /dev/null +++ b/bootstrap @@ -0,0 +1,3 @@ +#!/bin/sh + +autoreconf -vif diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..8d32ce2 --- /dev/null +++ b/configure.ac @@ -0,0 +1,33 @@ +# -*- Autoconf -*- +# +# guile-websocket --- WebSocket client/server +# Copyright © 2015 David Thompson +# +# This file is part of guile-websocket. +# +# Guile-websocket is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# Guile-websocket 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with guile-websocket. If not, see +# . + +AC_INIT(guile-websocket, 0.1) +AC_CONFIG_SRCDIR([web]) +AC_CONFIG_AUX_DIR([build-aux]) +AM_INIT_AUTOMAKE([color-tests -Wall -Wno-portability foreign]) +AM_SILENT_RULES([yes]) + +AC_CONFIG_FILES([Makefile]) +AC_CONFIG_FILES([pre-inst-env], [chmod +x pre-inst-env]) + +GUILE_PROGS([2.0.9]) + +AC_OUTPUT diff --git a/pre-inst-env.in b/pre-inst-env.in new file mode 100644 index 0000000..21829fd --- /dev/null +++ b/pre-inst-env.in @@ -0,0 +1,32 @@ +#!/bin/sh + +# guile-websocket --- WebSocket client/server +# Copyright © 2015 David Thompson +# +# This file is part of guile-websocket. +# +# Guile-websocket is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# Guile-websocket 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with guile-websocket. If not, see +# . + +abs_top_srcdir="`cd "@abs_top_srcdir@" > /dev/null; pwd`" +abs_top_builddir="`cd "@abs_top_builddir@" > /dev/null; pwd`" + +GUILE_LOAD_COMPILED_PATH="$abs_top_builddir${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH" +GUILE_LOAD_PATH="$abs_top_builddir:$abs_top_srcdir${GUILE_LOAD_PATH:+:}:$GUILE_LOAD_PATH" +export GUILE_LOAD_COMPILED_PATH GUILE_LOAD_PATH + +PATH="$abs_top_builddir/scripts:$PATH" +export PATH + +exec "$@" -- cgit v1.2.3