summaryrefslogtreecommitdiff
path: root/applications/common
diff options
context:
space:
mode:
authorMathieu Malaterre <mathieu.malaterre@gmail.com>2014-03-18 16:26:39 +0000
committerMathieu Malaterre <mathieu.malaterre@gmail.com>2014-03-18 16:26:39 +0000
commitdac95eff3a972f5686316db39ed0b8431aff8908 (patch)
tree09d6667b5b52793641ec4efa295becdd1c29440a /applications/common
parent4f4de7070e2a9c769b41c5cdc38a0b19eb4cfa07 (diff)
[1.5] Rework r2768 in fact getopt_long is slightly different on GNU. Adapt signature to handle BSD signature and GNU one.
Update issue 301
Diffstat (limited to 'applications/common')
-rw-r--r--applications/common/opj_getopt.h34
1 files changed, 20 insertions, 14 deletions
diff --git a/applications/common/opj_getopt.h b/applications/common/opj_getopt.h
index 1fa3558d..704701b1 100644
--- a/applications/common/opj_getopt.h
+++ b/applications/common/opj_getopt.h
@@ -2,6 +2,25 @@
#include "opj_config.h"
+#ifdef USE_SYSTEM_GETOPT
+#include <getopt.h>
+
+#define opj_opterr opterr
+#define opj_optind optind
+#define opj_optopt optopt
+#define opj_optreset optreset
+#define opj_optarg optarg
+
+typedef struct option opj_option_t;
+
+#define NO_ARG no_argument
+#define REQ_ARG required_argument
+#define OPT_ARG optional_argument
+
+#define opj_getopt getopt
+#define opj_getopt_long getopt_long
+
+#else
#ifndef _GETOPT_H_
#define _GETOPT_H_
@@ -17,19 +36,6 @@ typedef struct opj_option
#define REQ_ARG 1
#define OPT_ARG 2
-#ifdef USE_SYSTEM_GETOPT
-#include <getopt.h>
-
-#define opj_opterr opterr
-#define opj_optind optind
-#define opj_optopt optopt
-#define opj_optreset optreset
-#define opj_optarg optarg
-
-#define opj_getopt getopt
-#define opj_getopt_long getopt_long
-
-#else
extern int opj_opterr;
extern int opj_optind;
extern int opj_optopt;
@@ -41,5 +47,5 @@ extern int opj_getopt_long(int argc, char * const argv[], const char *optstring,
const opj_option_t *longopts, int totlen);
extern void reset_options_reading(void);
-#endif /* USE_SYSTEM_GETOPT */
#endif /* _GETOPT_H_ */
+#endif /* USE_SYSTEM_GETOPT */