From c7dce69805e23fdbbbfd21c0e193f20841fbf87d Mon Sep 17 00:00:00 2001
From: Jardel Weyrich <jweyrich@gmail.com>
Date: Mon, 9 Jan 2017 16:51:14 -0200
Subject: [PATCH] Fix mistakes related to DESTDIR and prefix.

---
 src/Makefile         |  8 ++++++--
 src/config.c         |  2 +-
 src/pepack.c         |  1 +
 src/plugins/Makefile | 14 +++++++-------
 4 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/src/Makefile b/src/Makefile
index 0d7295d..f011eec 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -29,7 +29,7 @@ manext = .1
 man1dir = $(mandir)/man1
 man1ext = .1
 
-export pluginsdir = $(DESTDIR)$(libdir)/pev/plugins
+export pluginsdir = $(libdir)/pev/plugins
 
 ####### Makefile Conventions - Utilities
 
@@ -54,7 +54,11 @@ endif
 
 override LDFLAGS += -L$(LIBPE) -lpe -ldl
 override CFLAGS += -I$(LIBPE) -I"../include" -W -Wall -Wextra -std=c99 -pedantic
-override CPPFLAGS += -D_GNU_SOURCE -DSHAREDIR="\"$(SHAREDIR)"\"
+override CPPFLAGS += \
+	-D_GNU_SOURCE \
+	-D_FORTIFY_SOURCE=1 \
+	-DSHAREDIR="\"$(SHAREDIR)"\" \
+	-DPLUGINSDIR="\"$(pluginsdir)"\"
 
 ifeq ($(PLATFORM_OS), Darwin)
 	# We disable warnings for deprecated declarations since Apple deprecated OpenSSL in Mac OS X 10.7
diff --git a/src/config.c b/src/config.c
index 6021151..86f47dc 100644
--- a/src/config.c
+++ b/src/config.c
@@ -55,7 +55,7 @@
 #define DEFAULT_PLUGINS_PATH "plugins"
 #else
 #define DEFAULT_CONFIG_PATH ".config/pev" DEFAULT_CONFIG_FILENAME
-#define DEFAULT_PLUGINS_PATH "/usr/local/lib/pev/plugins"
+#define DEFAULT_PLUGINS_PATH PLUGINSDIR // PLUGINSDIR is defined via CPPFLAGS in the Makefile
 #endif
 
 static bool _load_config_cb(pev_config_t * const config, const char *name, const char *value) {
diff --git a/src/pepack.c b/src/pepack.c
index e3702fb..d900d8a 100644
--- a/src/pepack.c
+++ b/src/pepack.c
@@ -155,6 +155,7 @@ static bool loaddb(FILE **fp, const options_t *options)
 	*fp = fopen(dbfile, "r");
 	// FIXME(jweyrich): Granted read permission to the informed dbfile, this will succeed even if it's a directory!
 	if (!*fp) {
+		// SHAREDIR is defined via CPPFLAGS in the Makefile
 		*fp = fopen(SHAREDIR "/userdb.txt", "r");
 	}
 
diff --git a/src/plugins/Makefile b/src/plugins/Makefile
index 5028967..1bd329e 100644
--- a/src/plugins/Makefile
+++ b/src/plugins/Makefile
@@ -77,14 +77,14 @@ clean:
 ###
 
 install: installdirs
-	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(csv_LIBNAME).* $(pluginsdir)
-	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(html_LIBNAME).* $(pluginsdir)
-	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(text_LIBNAME).* $(pluginsdir)
-	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(xml_LIBNAME).* $(pluginsdir)
-	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(json_LIBNAME).* $(pluginsdir)
+	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(csv_LIBNAME).* $(DESTDIR)$(pluginsdir)
+	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(html_LIBNAME).* $(DESTDIR)$(pluginsdir)
+	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(text_LIBNAME).* $(DESTDIR)$(pluginsdir)
+	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(xml_LIBNAME).* $(DESTDIR)$(pluginsdir)
+	$(INSTALL_PROGRAM) -m 755 $(plugins_BUILDDIR)/$(json_LIBNAME).* $(DESTDIR)$(pluginsdir)
 
 installdirs:
-	@$(CHK_DIR_EXISTS) $(pluginsdir) || $(MKDIR) $(pluginsdir)
+	@$(CHK_DIR_EXISTS) $(DESTDIR)$(pluginsdir) || $(MKDIR) $(DESTDIR)$(pluginsdir)
 
 uninstall:
-	$(RM_DIR) $(pluginsdir)
+	$(RM_DIR) $(DESTDIR)$(pluginsdir)
