[69129] trunk/dports/math/pspp-devel
snc at macports.org
snc at macports.org
Thu Jun 24 09:01:54 PDT 2010
Revision: 69129
http://trac.macports.org/changeset/69129
Author: snc at macports.org
Date: 2010-06-24 09:01:53 -0700 (Thu, 24 Jun 2010)
Log Message:
-----------
update version, add patches for weird getopt issues
Modified Paths:
--------------
trunk/dports/math/pspp-devel/Portfile
Added Paths:
-----------
trunk/dports/math/pspp-devel/files/patch-optarg.diff
trunk/dports/math/pspp-devel/files/patch-optind.diff
Modified: trunk/dports/math/pspp-devel/Portfile
===================================================================
--- trunk/dports/math/pspp-devel/Portfile 2010-06-24 14:30:32 UTC (rev 69128)
+++ trunk/dports/math/pspp-devel/Portfile 2010-06-24 16:01:53 UTC (rev 69129)
@@ -4,10 +4,10 @@
PortSystem 1.0
name pspp-devel
-set buildstamp 20100621040501
-set buildhash g551ae7
+set buildstamp 20100624040502
+set buildhash g24ce3b
version 0.7.5
-revision 3
+revision 4
categories math
license GPLv3+
maintainers snc
@@ -24,9 +24,9 @@
master_sites http://pspp.benpfaff.org/~blp/pspp-master/${buildstamp}
distname pspp-${version}-${buildhash}
-checksums md5 d941641a8d4fc41a7555405a1235344e \
- sha1 d88fef8f8ffe7fa07d32129a1ddcd5009f431c12 \
- rmd160 343b01097d03d3d4b82a16b9eb6a3eefa3ffd602
+checksums md5 44a1272c51f9f44b88b09d5bfd81e168 \
+ sha1 e5ad4d4cf205ec5840f21e15a8097d3fc9a93ede \
+ rmd160 d820c08966eb3c4e71b3f010a1e2a618dd905cd7
depends_build port:pkgconfig
depends_lib port:gsl \
@@ -40,11 +40,15 @@
port:libglade2 \
port:libtool
+patchfiles patch-optarg.diff patch-optind.diff
+patch.pre_args -p1
+
+#configure.optflags -O0
+#configure.cflags-append -g
configure.env-append CPPFLAGS=-I${prefix}/include
configure.perl ${prefix}/bin/perl
configure.args --disable-rpath \
--without-libpq \
- --enable-debug \
--without-libncurses \
--with-packager=snc \
--with-packager-version=${version}-${buildstamp} \
Added: trunk/dports/math/pspp-devel/files/patch-optarg.diff
===================================================================
--- trunk/dports/math/pspp-devel/files/patch-optarg.diff (rev 0)
+++ trunk/dports/math/pspp-devel/files/patch-optarg.diff 2010-06-24 16:01:53 UTC (rev 69129)
@@ -0,0 +1,84 @@
+diff --git a/src/libpspp/argv-parser.c b/src/libpspp/argv-parser.c
+index ecf1ab2..6ffcf4e 100644
+--- a/src/libpspp/argv-parser.c
++++ b/src/libpspp/argv-parser.c
+@@ -28,7 +28,7 @@
+ struct argv_option_plus
+ {
+ struct argv_option base;
+- void (*cb) (int id, void *aux);
++ void (*cb) (int id, void *aux, const char *);
+ void *aux;
+ };
+
+@@ -67,7 +67,7 @@ argv_parser_destroy (struct argv_parser *ap)
+ void
+ argv_parser_add_options (struct argv_parser *ap,
+ const struct argv_option *options, size_t n,
+- void (*cb) (int id, void *aux), void *aux)
++ void (*cb) (int id, void *aux, const char *), void *aux)
+ {
+ const struct argv_option *src;
+ for (src = options; src < &options[n]; src++)
+@@ -165,12 +165,12 @@ argv_parser_run (struct argv_parser *ap, int argc, char **argv)
+ else if (c >= LONGOPT_VAL_BASE && c < LONGOPT_VAL_BASE + n_longopts)
+ {
+ struct argv_option_plus *aop = &ap->options[c - LONGOPT_VAL_BASE];
+- aop->cb (aop->base.id, aop->aux);
++ aop->cb (aop->base.id, aop->aux, optarg);
+ }
+ else if (c >= SCHAR_MIN && c <= UCHAR_MAX)
+ {
+ const struct argv_option_plus *aop = shortopt_ptrs[(unsigned char) c];
+- aop->cb (aop->base.id, aop->aux);
++ aop->cb (aop->base.id, aop->aux, optarg);
+ }
+ else
+ NOT_REACHED ();
+diff --git a/src/libpspp/argv-parser.h b/src/libpspp/argv-parser.h
+index 6e6d83f..a9c5de0 100644
+--- a/src/libpspp/argv-parser.h
++++ b/src/libpspp/argv-parser.h
+@@ -53,7 +53,7 @@ void argv_parser_destroy (struct argv_parser *);
+
+ void argv_parser_add_options (struct argv_parser *,
+ const struct argv_option *options, size_t n,
+- void (*cb) (int id, void *aux), void *aux);
++ void (*cb) (int id, void *aux, const char *), void *aux);
+ bool argv_parser_run (struct argv_parser *, int argc, char **argv);
+
+ #endif /* libpspp/argv-parser.h */
+diff --git a/src/ui/terminal/terminal-opts.c b/src/ui/terminal/terminal-opts.c
+index 775e36c..8d4468b 100644
+--- a/src/ui/terminal/terminal-opts.c
++++ b/src/ui/terminal/terminal-opts.c
+@@ -228,7 +228,7 @@ Non-option arguments are interpreted as syntax files to execute.\n"),
+ }
+
+ static void
+-terminal_option_callback (int id, void *to_)
++terminal_option_callback (int id, void *to_, const char *argstr)
+ {
+ struct terminal_opts *to = to_;
+
+@@ -239,17 +239,17 @@ terminal_option_callback (int id, void *to_)
+ break;
+
+ case OPT_ERROR_FILE:
+- if (!strcmp (optarg, "none") || msglog_create (optarg))
++ if (!strcmp (argstr, "none") || msglog_create (argstr))
+ to->has_error_file = true;
+ break;
+
+ case OPT_OUTPUT:
+ register_output_driver (to);
+- string_map_insert (&to->options, "output-file", optarg);
++ string_map_insert (&to->options, "output-file", argstr);
+ break;
+
+ case OPT_OUTPUT_OPTION:
+- parse_output_option (to, optarg);
++ parse_output_option (to, argstr);
+ break;
+
+ case OPT_NO_OUTPUT:
Added: trunk/dports/math/pspp-devel/files/patch-optind.diff
===================================================================
--- trunk/dports/math/pspp-devel/files/patch-optind.diff (rev 0)
+++ trunk/dports/math/pspp-devel/files/patch-optind.diff 2010-06-24 16:01:53 UTC (rev 69129)
@@ -0,0 +1,112 @@
+diff --git a/src/libpspp/argv-parser.c b/src/libpspp/argv-parser.c
+index 6ffcf4e..4a76780 100644
+--- a/src/libpspp/argv-parser.c
++++ b/src/libpspp/argv-parser.c
+@@ -36,14 +36,22 @@ struct argv_parser
+ {
+ struct argv_option_plus *options;
+ size_t n_options, allocated_options;
++ int optidx;
+ };
+
++int
++argv_parser_optind (const struct argv_parser *ap)
++{
++ return ap->optidx;
++}
++
+ /* Creates and returns a new argv_parser that initially is not
+ configured to parse any command-line options. */
+ struct argv_parser *
+ argv_parser_create (void)
+ {
+ struct argv_parser *ap = xzalloc (sizeof *ap);
++ ap->optidx = -1;
+ return ap;
+ }
+
+@@ -176,6 +184,8 @@ argv_parser_run (struct argv_parser *ap, int argc, char **argv)
+ NOT_REACHED ();
+ }
+
++ ap->optidx = optind;
++
+ exit:
+ ds_destroy (&shortopts);
+ free (longopts);
+diff --git a/src/libpspp/argv-parser.h b/src/libpspp/argv-parser.h
+index a9c5de0..3666c7c 100644
+--- a/src/libpspp/argv-parser.h
++++ b/src/libpspp/argv-parser.h
+@@ -56,4 +56,6 @@ void argv_parser_add_options (struct argv_parser *,
+ void (*cb) (int id, void *aux, const char *), void *aux);
+ bool argv_parser_run (struct argv_parser *, int argc, char **argv);
+
++int argv_parser_optind (const struct argv_parser *);
++
+ #endif /* libpspp/argv-parser.h */
+diff --git a/src/libpspp/model-checker.c b/src/libpspp/model-checker.c
+index 80198f8..fd32978 100644
+--- a/src/libpspp/model-checker.c
++++ b/src/libpspp/model-checker.c
+@@ -690,7 +690,7 @@ enum { N_MC_ARGV_OPTIONS = sizeof mc_argv_options / sizeof *mc_argv_options };
+ /* Called by argv_parser_run to indicate that option ID has been
+ parsed. */
+ static void
+-mc_parser_option_callback (int id, void *mc_options_)
++mc_parser_option_callback (int id, void *mc_options_, int optidx)
+ {
+ struct mc_options *options = mc_options_;
+ switch (id)
+diff --git a/src/ui/terminal/main.c b/src/ui/terminal/main.c
+index 02be4f7..4c35f19 100644
+--- a/src/ui/terminal/main.c
++++ b/src/ui/terminal/main.c
+@@ -109,7 +109,7 @@ main (int argc, char **argv)
+ source_init_register_argv_parser (parser, the_source_stream);
+ if (!argv_parser_run (parser, argc, argv))
+ exit (EXIT_FAILURE);
+- terminal_opts_done (terminal_opts, argc, argv);
++ terminal_opts_done (terminal_opts, argc, argv, argv_parser_optind (parser));
+ argv_parser_destroy (parser);
+
+ msg_ui_init (the_source_stream);
+diff --git a/src/ui/terminal/terminal-opts.c b/src/ui/terminal/terminal-opts.c
+index 8d4468b..237f405 100644
+--- a/src/ui/terminal/terminal-opts.c
++++ b/src/ui/terminal/terminal-opts.c
+@@ -312,7 +312,7 @@ add_syntax_file (struct terminal_opts *to, const char *file_name)
+ }
+
+ void
+-terminal_opts_done (struct terminal_opts *to, int argc, char *argv[])
++terminal_opts_done (struct terminal_opts *to, int argc, char *argv[], int optidx)
+ {
+ if (to->process_statrc)
+ {
+@@ -326,11 +326,11 @@ terminal_opts_done (struct terminal_opts *to, int argc, char *argv[])
+ }
+ }
+
+- if (optind < argc)
++ if (optidx < argc)
+ {
+ int i;
+
+- for (i = optind; i < argc; i++)
++ for (i = optidx; i < argc; i++)
+ add_syntax_file (to, argv[i]);
+ }
+ else
+diff --git a/src/ui/terminal/terminal-opts.h b/src/ui/terminal/terminal-opts.h
+index 1225112..c171dd0 100644
+--- a/src/ui/terminal/terminal-opts.h
++++ b/src/ui/terminal/terminal-opts.h
+@@ -24,6 +24,6 @@ struct terminal_opts;
+
+ struct terminal_opts *terminal_opts_init (struct argv_parser *,
+ struct source_stream *);
+-void terminal_opts_done (struct terminal_opts *, int argc, char *argv[]);
++void terminal_opts_done (struct terminal_opts *, int argc, char *argv[], int optidx);
+
+ #endif /* ui/terminal/terminal-opts.h */
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100624/b1218d9c/attachment.html>
More information about the macports-changes
mailing list