aboutsummaryrefslogtreecommitdiffstats
path: root/main/linenoise/build-shared-lib.patch
blob: 2f9542dcfd9d123787fa7261d3f0cf43dfde988f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
--- ./Makefile.orig
+++ ./Makefile
@@ -1,7 +1,33 @@
+MAJOR_VERSION = 0
+EXTRA_VERSION = .0.0
+SONAME = liblinenoise.so.$(MAJOR_VERSION)
+LIB = $(SONAME)$(EXTRA_VERSION)
+
+export CFLAGS ?= -Os -g
+CFLAGS += -Wall -fpic -DUSE_UTF8
+LIBDIR ?= /usr/lib
+INCLUDEDIR ?= /usr/include
+
+.PHONY: all
+all: $(LIB) linenoise_example
+
+$(LIB): linenoise.o
+	$(CC) $(CFLAGS) -shared -Wl,-soname,$(SONAME) $(LDFLAGS) -o $@ $^
+
 linenoise_example: linenoise.h linenoise.c
 
 linenoise_example: linenoise.c example.c
 	$(CC) -Wall -W -Os -g -o linenoise_example linenoise.c example.c
 
+.PHONY: clean
 clean:
-	rm -f linenoise_example
+	rm -f$(LIB)  linenoise_example *.o
+
+.PHONY: install
+install: $(LIB)
+	install -m 0755 -d $(DESTDIR)$(INCLUDEDIR)
+	install -m 0644 linenoise.h $(DESTDIR)$(INCLUDEDIR)
+	install -m 0755 -d $(DESTDIR)$(LIBDIR)
+	install -m 0755 $(LIB) $(DESTDIR)$(LIBDIR)
+	ldconfig -n $(DESTDIR)$(LIBDIR)
+	ln -s $(LIB) $(DESTDIR)$(LIBDIR)/liblinenoise.so