From 72c55e3da59eccdfea3778d11f83862b58af723d Mon Sep 17 00:00:00 2001
From: Pierre-Jean Texier <pjtexier@koncepto.io>
Date: Thu, 23 Jan 2020 22:42:40 +0100
Subject: [PATCH 2/2] unzck: fix build with musl libc

On musl libc "stdout" is a preprocessor macro whose expansion leads to
compilation errors.

Fixes:

| In file included from ../git/src/unzck.c:31:
| ../git/src/unzck.c: In function 'parse_opt':
| ../git/src/unzck.c:78:24: error: expected identifier before '(' token
|    78 |             arguments->stdout = true;
|       |                        ^~~~~~
| ../git/src/unzck.c: In function 'main':
| ../git/src/unzck.c:141:20: error: expected identifier before '(' token
|   141 |     if(!(arguments.stdout)) {
|       |                    ^~~~~~

Upstream-Status: Submitted [https://github.com/zchunk/zchunk/pull/23]

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
---
 src/unzck.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/unzck.c b/src/unzck.c
index 8d6c62a..002492c 100644
--- a/src/unzck.c
+++ b/src/unzck.c
@@ -58,7 +58,7 @@ struct arguments {
   char *args[1];
   zck_log_type log_level;
   bool dict;
-  bool stdout;
+  bool stdOut;
   bool exit;
 };
 
@@ -75,7 +75,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state) {
                 arguments->log_level = ZCK_LOG_DDEBUG;
             break;
         case 'c':
-            arguments->stdout = true;
+            arguments->stdOut = true;
             break;
         case 'V':
             version();
@@ -138,7 +138,7 @@ int main (int argc, char *argv[]) {
         snprintf(out_name + strlen(base_name) - 4, 7, ".zdict");
 
     int dst_fd = STDOUT_FILENO;
-    if(!arguments.stdout) {
+    if(!arguments.stdOut) {
         dst_fd = open(out_name, O_TRUNC | O_WRONLY | O_CREAT, 0666);
         if(dst_fd < 0) {
             dprintf(STDERR_FILENO, "Unable to open %s", out_name);
-- 
2.7.4

