summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Isaac2022-03-14 10:15:37 +0530
committerArun Isaac2022-03-14 10:15:37 +0530
commit9ccc8f8f1d0732a6716a569fa05854d6fc2c23c3 (patch)
treec70f1576adcbe02e6938e2fe0df97ee4a95e2353
parente62965d54e3251c737202819fc031ba4bfc55596 (diff)
downloadtissue-9ccc8f8f1d0732a6716a569fa05854d6fc2c23c3.tar.gz
tissue-9ccc8f8f1d0732a6716a569fa05854d6fc2c23c3.tar.lz
tissue-9ccc8f8f1d0732a6716a569fa05854d6fc2c23c3.zip
Makefile: Install guile libraries.
* Makefile (project, guile_effective_version, GUILD, libdir, datarootdir, top_level_module_dir, sources, objects, scmdir, godir): New variables. * Makefile (all): Depend on $(objects). (%.go): New target. (install): Install $(sources) and $(objects).
-rw-r--r--Makefile21
1 files changed, 20 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index cc864c8..ce6142c 100644
--- a/Makefile
+++ b/Makefile
@@ -16,17 +16,36 @@
# You should have received a copy of the GNU General Public License
# along with tissue. If not, see <https://www.gnu.org/licenses/>.
+project = tissue
+# FIXME: Do not hardcode the effective version.
+guile_effective_version = 3.0
+
+GUILD ?= guild
+
prefix ?= /usr/local
exec_prefix ?= $(prefix)
bindir ?= $(exec_prefix)/bin
+libdir ?= $(exec_prefix)/lib
+datarootdir ?= $(prefix)/share
+top_level_module_dir = $(project)
+sources = $(wildcard $(top_level_module_dir)/*.scm)
+objects = $(sources:.scm=.go)
scripts = $(wildcard bin/*)
+scmdir = $(datarootdir)/guile/site/$(guile_effective_version)/$(top_level_module_dir)
+godir = $(libdir)/guile/$(guile_effective_version)/site-ccache/$(top_level_module_dir)
+
.PHONY: all check install
-all: ;
+all: $(objects)
+
+%.go: %.scm
+ $(GUILD) compile -L . -o $@ $<
check: ;
install: $(scripts)
install -D $^ --target-directory $(bindir)
+ install -D $(sources) --target-directory $(scmdir)
+ install -D $(objects) --target-directory $(godir)