summaryrefslogtreecommitdiff
path: root/sci-geosciences/owntracks-recorder/files/owntracks-recorder-build.patch
blob: 0209e73cef50eb21cb1ceb073b91b63e82db6286 (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
https://github.com/owntracks/recorder/pull/402

diff --git a/Makefile b/Makefile
index f2b9a41..546dd58 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 include config.mk

-CFLAGS	+=-Wall -Werror -DNS_ENABLE_IPV6
+CFLAGS	+= -Wall -DNS_ENABLE_IPV6
 LIBS	= $(MORELIBS) -lm
 LIBS 	+= -lcurl -lconfig

@@ -23,10 +23,18 @@ CFLAGS += -DGHASHPREC=$(GHASHPREC)
 LIBS += -llmdb
 LIBS += -lpthread

+define CPP_CONDITION
+printf '#if $(1) \n
+true \n
+#else \n
+#error false \n
+#endif' | $(CPP) -P - >/dev/null 2>&1 && echo yes
+endef
+
 ifeq ($(WITH_MQTT),yes)
 	CFLAGS += -DWITH_MQTT=1
-	CFLAGS += $(MOSQUITTO_INC)
-	LIBS += $(MOSQUITTO_LIB) -lmosquitto -lm
+	CFLAGS += $(MOSQUITTO_CFLAGS)
+	LIBS += $(MOSQUITTO_LIBS) -lm
 endif

 ifeq ($(WITH_PING),yes)
@@ -56,6 +64,12 @@ endif
 ifeq ($(WITH_TOURS),yes)
 	CFLAGS += -DWITH_TOURS
 	OTR_EXTRA_OBJS +=
+
+	# Debian requires uuid-dev
+	# RHEL/CentOS needs libuuid-devel
+	ifeq ($(shell $(call CPP_CONDITION,__linux__)),yes)
+		LIBS += -luuid
+	endif
 endif

 ifeq ($(WITH_GREENWICH),yes)
@@ -77,14 +91,16 @@ TARGETS += ot-recorder ocat
 GIT_VERSION := $(shell git describe --long --abbrev=10 --dirty --tags 2>/dev/null || echo "tarball")
 CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"

+PKG_CONFIG ?= pkg-config
+
 all: $(TARGETS)

 ot-recorder: recorder.o $(OTR_OBJS) $(OTR_EXTRA_OBJS)
-	$(CC) $(CFLAGS) -o ot-recorder recorder.o $(OTR_OBJS) $(OTR_EXTRA_OBJS) $(LIBS)
+	$(CC) $(CFLAGS) $(LDFLAGS) -o ot-recorder recorder.o $(OTR_OBJS) $(OTR_EXTRA_OBJS) $(LIBS)
 	if test -r codesign.sh; then /bin/sh codesign.sh; fi

 ocat: ocat.o $(OTR_OBJS)
-	$(CC) $(CFLAGS) -o ocat ocat.o $(OTR_OBJS) $(LIBS)
+	$(CC) $(CFLAGS) $(LDFLAGS) -o ocat ocat.o $(OTR_OBJS) $(LIBS)

 $(OTR_OBJS): config.mk Makefile

@@ -114,8 +130,8 @@ install: ot-recorder ocat
 	mkdir -p $(DESTDIR)$(INSTALLDIR)/bin
 	mkdir -p $(DESTDIR)$(INSTALLDIR)/sbin
 	mkdir -p $(DESTDIR)$(DOCROOT)
-	mkdir -p $(DESTDIR)$(STORAGEDEFAULT)/last
-	cp -R docroot/* $(DESTDIR)$(DOCROOT)/
+	mkdir -p $(DESTDIR)$(STORAGEDEFAULT)
+	cd docroot && find ! -type d ! -name .gitignore -exec install -m0644 -D {} $(DESTDIR)$(DOCROOT)/{} \;
 	install -m 0755 ot-recorder $(DESTDIR)$(INSTALLDIR)/sbin
 	install -m 0755 ocat $(DESTDIR)$(INSTALLDIR)/bin
 	mkdir -p `dirname $(DESTDIR)/$(CONFIGFILE)`
diff --git a/config.mk.in b/config.mk.in
index 6fd674d..9def768 100644
--- a/config.mk.in
+++ b/config.mk.in
@@ -40,7 +40,7 @@ WITH_MQTT ?= yes
 WITH_HTTP ?= yes

 # Do you want recorder support for shared views? Requires WITH_HTTP
-# also requires -luuid on Linux (see below at MORELIBS)
+# also requires -luuid on Linux.
 WITH_TOURS ?= yes

 # Do you have Lua libraries installed and want the Lua hook integration?
@@ -90,12 +90,8 @@ JSON_INDENT ?= no
 CONFIGFILE = /etc/default/ot-recorder

 # Optionally specify the path to the Mosquitto libs, include here
-MOSQUITTO_INC = -I/usr/include
-MOSQUITTO_LIB = -L/usr/lib
-
-# Debian requires uuid-dev
-# RHEL/CentOS needs libuuid-devel
-MORELIBS += -luuid # -lssl
+MOSQUITTO_CFLAGS = `$(PKG_CONFIG) --cflags libmosquitto`
+MOSQUITTO_LIBS   = `$(PKG_CONFIG) --libs libmosquitto`

 # Milliseconds (ms) timeout for reverse geocoding
 GEOCODE_TIMEOUT = 4000
@@ -105,8 +101,8 @@ GEOCODE_TIMEOUT = 4000
 # and in particular could require you to add the lua+version (e.g lua-5.2)
 # to both pkg-config invocations

-LUA_CFLAGS = `pkg-config --cflags lua`
-LUA_LIBS   = `pkg-config --libs lua`
+LUA_CFLAGS = `$(PKG_CONFIG) --cflags lua`
+LUA_LIBS   = `$(PKG_CONFIG) --libs lua`

-SODIUM_CFLAGS = `pkg-config --cflags libsodium`
-SODIUM_LIBS   = `pkg-config --libs libsodium`
+SODIUM_CFLAGS = `$(PKG_CONFIG) --cflags libsodium`
+SODIUM_LIBS   = `$(PKG_CONFIG) --libs libsodium`