From d62fd1eb968cebe75acdbcc43ccd33b24d6f163d Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sat, 14 May 2022 14:31:34 -0400 Subject: Lib install stuff --- Makefile | 14 ++++++++++++-- match.h | 1 + pattern.h | 1 + 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 2afb00d..8c8e472 100644 --- a/Makefile +++ b/Makefile @@ -22,13 +22,18 @@ G= O=-O3 ALL_FLAGS=$(CFLAGS) $(OSFLAGS) -DBP_NAME="\"$(NAME)\"" $(EXTRA) $(CWARN) $(G) $(O) +LIBFILE=lib$(NAME).so CFILES=pattern.c utils.c match.c files.c printmatch.c json.c utf8.c +HFILES=files.h json.h match.h pattern.h printmatch.h utf8.h utils.h OBJFILES=$(CFILES:.c=.o) $(NAME): $(OBJFILES) bp.c $(CC) $(ALL_FLAGS) -o $@ $(OBJFILES) bp.c -all: $(NAME) bp.1 lua +$(LIBFILE): $(OBJFILES) + $(CC) $^ $(ALL_FLAGS) -Wl,-soname,$(LIBFILE) -shared -o $@ + +all: $(NAME) $(LIBFILE) bp.1 lua %.o: %.c %.h utf8.h $(CC) -c $(ALL_FLAGS) -o $@ $< @@ -76,6 +81,11 @@ install: $(NAME) bp.1 rm -f "$(PREFIX)/bin/$(NAME)" cp $(NAME) "$(PREFIX)/bin/" +install-lib: $(LIBFILE) bp.1 + mkdir -p -m 755 "$(PREFIX)/lib" "$(PREFIX)/include/$(NAME)" + cp $(LIBFILE) "$(PREFIX)/lib" + cp $(HFILES) "$(PREFIX)/include/$(NAME)" + uninstall: rm -rf "$(PREFIX)/bin/$(NAME)" "$(PREFIX)/man/man1/$(NAME).1" "$(SYSCONFDIR)/$(NAME)" @if [ -d ~/.config/$(NAME) ]; then \ @@ -84,4 +94,4 @@ uninstall: [ "$$confirm" != n ] && rm -rf ~/.config/$(NAME); \ fi -.PHONY: all clean install uninstall leaktest splint test tutorial lua +.PHONY: all clean install install-lib uninstall leaktest splint test tutorial lua diff --git a/match.h b/match.h index 5209977..6c875c4 100644 --- a/match.h +++ b/match.h @@ -6,6 +6,7 @@ #include #include +#include #include "pattern.h" diff --git a/pattern.h b/pattern.h index 16b9654..7569849 100644 --- a/pattern.h +++ b/pattern.h @@ -5,6 +5,7 @@ #define PATTERN__H #include +#include #define UNBOUNDED(pat) ((pat)->max_matchlen == -1) -- cgit v1.2.3