aboutsummaryrefslogtreecommitdiffstats
path: root/meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch')
-rw-r--r--meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch127
1 files changed, 127 insertions, 0 deletions
diff --git a/meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch b/meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch
new file mode 100644
index 0000000..ea36d81
--- /dev/null
+++ b/meta-application-manager/recipes-others/tizen-platform-wrapper/files/0001-Add-env-value-SYSROOT-for-root-fs-prefix.patch
@@ -0,0 +1,127 @@
+From 3f698caea8b6e35f89963e8ad633a9f6ca8f4970 Mon Sep 17 00:00:00 2001
+From: Ronan Le Martret <ronan@fridu.net>
+Date: Tue, 08 Jul 2014 10:40:21 +0200
+Subject: [PATCH] Add env value SYSROOT for root fs prefix
+
+Change-Id: I5c57494317473dcd74c85cbc2bce19a6d68c2739
+Signed-off-by: Ronan Le Martret <ronan@fridu.net>
+---
+
+diff --git a/src/foreign.c b/src/foreign.c
+index a19f6ad..6b172b2 100644
+--- a/src/foreign.c
++++ b/src/foreign.c
+@@ -85,6 +85,11 @@
+ default: break;
+ }
+ }
++#if _FOREIGN_HAS_(SYSROOT)
++ else if (length == 7)
++ if (name[0]=='S' && name[1]=='Y' && name[2]=='S' && name[3]=='R' && name[4]=='O' && name[5]=='O' && name[6]=='T')
++ return SYSROOT;
++#endif
+ return _FOREIGN_INVALID_;
+ }
+
+diff --git a/src/foreign.h b/src/foreign.h
+index 646a41d..6b1ea06 100644
+--- a/src/foreign.h
++++ b/src/foreign.h
+@@ -24,26 +24,28 @@
+ #ifndef FOREIGN_H
+ #define FOREIGN_H
+
+-#define _FOREIGN_MASK_HOME_ 1
+-#define _FOREIGN_MASK_UID_ 2
+-#define _FOREIGN_MASK_USER_ 4
+-#define _FOREIGN_MASK_GID_ 8
+-#define _FOREIGN_MASK_EHOME_ 16
+-#define _FOREIGN_MASK_EUID_ 32
+-#define _FOREIGN_MASK_EUSER_ 64
++#define _FOREIGN_MASK_HOME_ 1
++#define _FOREIGN_MASK_UID_ 2
++#define _FOREIGN_MASK_USER_ 4
++#define _FOREIGN_MASK_GID_ 8
++#define _FOREIGN_MASK_EHOME_ 16
++#define _FOREIGN_MASK_EUID_ 32
++#define _FOREIGN_MASK_EUSER_ 64
++#define _FOREIGN_MASK_SYSROOT_ 128
+
+ #define _FOREIGNS_TO_USE_ ( _FOREIGN_MASK_HOME_ \
+- | _FOREIGN_MASK_USER_ )
++ | _FOREIGN_MASK_USER_ \
++ | _FOREIGN_MASK_SYSROOT_)
+
+ #define _FOREIGN_HAS_(x) (0 != ((_FOREIGNS_TO_USE_) & (_FOREIGN_MASK_##x##_)))
+
+ enum fkey {
+- _FOREIGN_INVALID_ = -1,
++ _FOREIGN_INVALID_ = -1,
+ #if _FOREIGN_HAS_(HOME)
+ HOME,
+ #endif
+ #if _FOREIGN_HAS_(UID)
+- UID,
++ UID,
+ #endif
+ #if _FOREIGN_HAS_(USER)
+ USER,
+@@ -52,14 +54,17 @@
+ GID,
+ #endif
+ #if _FOREIGN_HAS_(EHOME)
+- EHOME,
++ EHOME,
+ #endif
+ #if _FOREIGN_HAS_(EUID)
+- EUID,
++ EUID,
+ #endif
+ #if _FOREIGN_HAS_(EUSER)
+ EUSER,
+ #endif
++#if _FOREIGN_HAS_(SYSROOT)
++ SYSROOT,
++#endif
+ _FOREIGN_COUNT_
+ };
+
+diff --git a/src/init.c b/src/init.c
+index 76868cc..9d16d86 100644
+--- a/src/init.c
++++ b/src/init.c
+@@ -63,7 +63,8 @@
+
+ #define _HAS_IDS_ ( _FOREIGN_HAS_(UID) \
+ || _FOREIGN_HAS_(EUID) \
+- || _FOREIGN_HAS_(GID) )
++ || _FOREIGN_HAS_(GID) \
++ || _FOREIGN_HAS_(SYSROOT) )
+
+ #define _HAS_PWS_ ( _FOREIGN_HAS_(HOME) \
+ || _FOREIGN_HAS_(USER) \
+@@ -275,7 +276,7 @@
+ }
+
+ /* callback for solving variables */
+-static const char *getcb( struct parsing *parsing,
++static const char *getcb( struct parsing *parsing,
+ const char *key, size_t length,
+ size_t begin_pos, size_t end_pos)
+ {
+@@ -284,6 +285,15 @@
+ size_t offset;
+ struct reading *reading = parsing->data;
+ int id;
++ char *res_sysroot;
++
++ if (strncmp( key, "SYSROOT", 7) == 0) {
++ res_sysroot = getenv("SYSROOT");
++ if (res_sysroot == NULL)
++ return "";
++ else
++ return res_sysroot;
++ }
+
+ /* try to find a tzplatform variable */
+ id = hashid(key, length);