From 72743820abc861f139804b5c5e31cc8962d85b59 Mon Sep 17 00:00:00 2001
From: "Nicolas \"Pixel\" Noble" <pixel@nobis-crew.org>
Date: Fri, 20 Feb 2015 20:59:29 +0100
Subject: [PATCH] Defining an installation prefix for grpc's root certs at
 compilation time.

---
 Makefile                             | 2 +-
 src/core/security/security_context.c | 7 +++++++
 templates/Makefile.template          | 2 +-
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 110d5f48ab..80a2ea0d87 100644
--- a/Makefile
+++ b/Makefile
@@ -163,7 +163,7 @@ HOST_LD = $(LD)
 HOST_LDXX = $(LDXX)
 
 CPPFLAGS += $(CPPFLAGS_$(CONFIG))
-DEFINES += $(DEFINES_$(CONFIG))
+DEFINES += $(DEFINES_$(CONFIG)) INSTALL_PREFIX=\"$(prefix)\"
 LDFLAGS += $(LDFLAGS_$(CONFIG))
 
 CFLAGS += -std=c89 -pedantic
diff --git a/src/core/security/security_context.c b/src/core/security/security_context.c
index f9fb2407cf..ec4aa16e79 100644
--- a/src/core/security/security_context.c
+++ b/src/core/security/security_context.c
@@ -60,6 +60,12 @@
   "AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:AES128-"  \
   "SHA256:AES256-SHA256"
 
+#ifndef INSTALL_PREFIX
+static const char *installed_roots_path = "/etc/grpc/roots.pem";
+#else
+static const char *installed_roots_path = INSTALL_PREFIX "/etc/grpc/roots.pem";
+#endif
+
 /* -- Common methods. -- */
 
 grpc_security_status grpc_security_context_create_handshaker(
@@ -404,6 +410,7 @@ static void init_default_pem_root_certs(void) {
     default_pem_root_certs = gpr_load_file(default_root_certs_path, NULL);
     gpr_free(default_root_certs_path);
   }
+  (void) installed_roots_path;
 }
 
 static size_t get_default_pem_roots(const unsigned char **pem_root_certs) {
diff --git a/templates/Makefile.template b/templates/Makefile.template
index f1f1badc16..3cc1a95192 100644
--- a/templates/Makefile.template
+++ b/templates/Makefile.template
@@ -180,7 +180,7 @@ HOST_LD = $(LD)
 HOST_LDXX = $(LDXX)
 
 CPPFLAGS += $(CPPFLAGS_$(CONFIG))
-DEFINES += $(DEFINES_$(CONFIG))
+DEFINES += $(DEFINES_$(CONFIG)) INSTALL_PREFIX=\"$(prefix)\"
 LDFLAGS += $(LDFLAGS_$(CONFIG))
 
 CFLAGS += -std=c89 -pedantic
-- 
GitLab