summarylogtreecommitdiffstats
path: root/0006-build-shared-library.patch
diff options
context:
space:
mode:
Diffstat (limited to '0006-build-shared-library.patch')
-rw-r--r--0006-build-shared-library.patch86
1 files changed, 86 insertions, 0 deletions
diff --git a/0006-build-shared-library.patch b/0006-build-shared-library.patch
new file mode 100644
index 000000000000..0207f9e295c1
--- /dev/null
+++ b/0006-build-shared-library.patch
@@ -0,0 +1,86 @@
+From 5da4701495e294b7d7344ea4a2f7bfd1daf9b771 Mon Sep 17 00:00:00 2001
+From: "Martin T. H. Sandsmark" <martin.sandsmark@kde.org>
+Date: Sun, 11 Oct 2020 13:40:30 +0200
+Subject: [PATCH 6/6] build shared library
+
+---
+ Makefile | 6 +++---
+ src/Makefile | 27 +++++++++++++--------------
+ 2 files changed, 16 insertions(+), 17 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 339bde6..608d318 100644
+--- a/Makefile
++++ b/Makefile
+@@ -7,12 +7,12 @@ INC_DIR = ./include
+ LIB_DIR = ./lib
+ BIN = siftfeat match dspfeat match_num
+
+-all: $(BIN) libopensift.a docs
++all: $(BIN) libopensift.so docs
+
+ docs:
+ doxygen Doxyfile
+
+-libopensift.a:
++libopensift.so:
+ make -C $(SRC_DIR) $@
+
+ $(BIN):
+@@ -29,4 +29,4 @@ distclean: clean
+ docsclean:
+ rm -rf $(DOC_DIR)/html/
+
+-.PHONY: docs clean docsclean libopensift.a
++.PHONY: docs clean docsclean libopensift.so
+diff --git a/src/Makefile b/src/Makefile
+index f466043..3290c01 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -1,30 +1,29 @@
+ CC = g++
+-CFLAGS += -fpermissive -Wno-deprecated-declarations -Wno-write-strings
++CFLAGS += -fpermissive -Wno-deprecated-declarations -Wno-write-strings -fPIC
+ BIN_DIR = ../bin
+ INC_DIR = ../include
+ LIB_DIR = ../lib
+ INCL = -I$(INC_DIR) `pkg-config --cflags opencv4 gtk+-2.0`
+-LIBS = -L$(LIB_DIR) -lopensift -lm -lopencv_highgui -lopencv_imgcodecs -lopencv_imgproc -lopencv_core `pkg-config --libs gtk+-2.0`
++LIBS = -L$(LIB_DIR) -lm -lopencv_highgui -lopencv_imgcodecs -lopencv_imgproc -lopencv_core
+ OBJ = imgfeatures.o utils.o sift.o kdtree.o minpq.o xform.o
+ BIN = siftfeat match dspfeat match_num
+
+-all: $(BIN) libopensift.a
++all: $(BIN) libopensift.so
+
+-libopensift.a: $(OBJ)
+- ar rc $(LIB_DIR)/$@ $(OBJ)
+- ranlib $(LIB_DIR)/$@
++libopensift.so: $(OBJ)
++ g++ -shared $(CFLAGS) $(LDFLAGS) -o $(LIB_DIR)/$@ $^ $(LIBS)
+
+-siftfeat: libopensift.a siftfeat.c
+- $(CC) $(CFLAGS) $(INCL) siftfeat.c -o $(BIN_DIR)/$@ $(LIBS)
++siftfeat: libopensift.so siftfeat.c
++ $(CC) $(CFLAGS) $(INCL) siftfeat.c -o $(BIN_DIR)/$@ -lopensift $(LIBS)
+
+-match: libopensift.a match.c
+- $(CC) $(CFLAGS) $(INCL) match.c -o $(BIN_DIR)/$@ $(LIBS)
++match: libopensift.so match.c
++ $(CC) $(CFLAGS) $(INCL) match.c -o $(BIN_DIR)/$@ -lopensift $(LIBS)
+
+-match_num: libopensift.a match.c
+- $(CC) $(CFLAGS) $(INCL) match_num.c -o $(BIN_DIR)/$@ $(LIBS)
++match_num: libopensift.so match.c
++ $(CC) $(CFLAGS) $(INCL) match_num.c -o $(BIN_DIR)/$@ -lopensift $(LIBS)
+
+-dspfeat: libopensift.a dspfeat.c
+- $(CC) $(CFLAGS) $(INCL) dspfeat.c -o $(BIN_DIR)/$@ $(LIBS)
++dspfeat: libopensift.so dspfeat.c
++ $(CC) $(CFLAGS) $(INCL) dspfeat.c -o $(BIN_DIR)/$@ -lopensift $(LIBS)
+
+ imgfeatures.o: imgfeatures.c $(INC_DIR)/imgfeatures.h
+ $(CC) $(CFLAGS) $(INCL) -c imgfeatures.c -o $@
+--
+2.28.0
+