From 7ca2408b51b94fc2d3740cbd4bb02b368efa457c Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Tue, 31 Jul 2012 02:40:56 +0200 Subject: Add relative directory parsing As of now, when using `-r' or `-R', relative directories can be used. This *does not* include locations starting with `~', those still need to be handled by your shell. Because every repo is treated as a possible relative path, and thus passed on to `realpath', the paths have become very uniform. This means that it will now only register and unregister paths that don't have a trailing `/'. This is not true during usage, so those paths still work, but they can't be removed by gitto, and adding them again will create a duplicate entry. * gitto/Makefile (objects): Add `path.scm' and `path.go'. (.PHONY): Add `all' as a phony target. (all): New target, compiles all `.go' targets. ($(filter %.go,$(objects))): Use `env' to run guild so that include paths are setup properly. * gitto/main.scm (gitto): Use new `(gitto path)' module, it contains the `realpath' function. (register-repository): (remove-repository): Always pass REPOSITORY through `realpath' and use the result. * gitto/path.scm: New file. Loads the `libguile-gitto-path' extension and exports its `realpath' function. * src/Makefile (CFLAGS): (LDFLAGS): Use `pkg-config' to gather the necessary values for guile. (libguile-gitto-path.so): New guile extension, wraps the `readline' POSIX function. * src/gitto-path.c: New file, wraps and exports the `realpath' POSIX function from `stdlib.h'. --- src/Makefile | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'src/Makefile') diff --git a/src/Makefile b/src/Makefile index 61946a0..584374e 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,11 +1,23 @@ DESTDIR ?= /usr/local +CFLAGS = $(shell pkg-config --cflags guile-2.0) -fPIC +LDFLAGS = $(shell pkg-config --libs guile-2.0) -all: +objects = gitto-path.o + +all: libguile-gitto-path.so .PHONY: install uninstall -install: gitto +libguile-gitto-path.so: gitto-path.o + $(CC) $(CFLAGS) -shared -o libguile-gitto-path.so $^ + +install-gitto: gitto install -Dm 755 $^ ${DESTDIR}/bin/$^ +install-libguile-gitto-path: libguile-gitto-path.so + install -Dm 755 $^ \ + $(shell pkg-config guile-2.0 --variable=extensiondir)/$^ +install: install-gitto install-libguile-gitto-path -uninstall: gitto - rm -f ${DESTDIR}/bin/$^ +uninstall: + rm -f ${DESTDIR}/bin/gitto + rm -f $(shell pkg-config guile-2.0 --variable=extensiondir)/libguile-gitto-path.so -- cgit v1.2.3-54-g00ecf