Simplify ggo makefile.
[paraslash.git] / m4 / gengetopt / makefile
index 8b0c1f8dc0fd79def4642f7513f38029da230d00..c613816f214e166f37ae9163877133d21474b0d2 100644 (file)
@@ -1,51 +1,15 @@
-module_ggo_opts := --set-version="($(PACKAGE_STRING), $(codename))"
-$(cmdline_dir):
-       mkdir -p $(cmdline_dir)
-
-$(cmdline_dir)/%_recv.cmdline.h $(cmdline_dir)/%_recv.cmdline.c: $(ggo_dir)/%_recv.ggo | $(cmdline_dir)
-       @[ -z "$(Q)" ] || echo 'GGO $<'
-       $(Q) $(GENGETOPT) $(module_ggo_opts) \
-               --output-dir=$(cmdline_dir) \
-               --set-package=$(subst .ggo,,$(<F)) \
-               --arg-struct-name=$(subst .ggo,,$(<F))_args_info \
-               --file-name=$(subst .ggo,,$(<F)).cmdline \
-               --func-name $(subst .ggo,,$(<F))_cmdline_parser < $<
-
-$(cmdline_dir)/%_filter.cmdline.h $(cmdline_dir)/%_filter.cmdline.c: $(ggo_dir)/%_filter.ggo | $(cmdline_dir)
-       @[ -z "$(Q)" ] || echo 'GGO $<'
-       $(Q) $(GENGETOPT) $(module_ggo_opts) \
-               --output-dir=$(cmdline_dir) \
-               --set-package=$(subst .ggo,,$(<F)) \
-               --arg-struct-name=$(subst .ggo,,$(<F))_args_info \
-               --file-name=$(subst .ggo,,$(<F)).cmdline \
-               --func-name=$(subst _filter.ggo,,$(<F))_cmdline_parser < $<
-$(cmdline_dir)/%_write.cmdline.h $(cmdline_dir)/%_write.cmdline.c: $(ggo_dir)/%_write.ggo | $(cmdline_dir)
-       @[ -z "$(Q)" ] || echo 'GGO $<'
-       $(Q) $(GENGETOPT) -S $(module_ggo_opts) \
-               --output-dir=$(cmdline_dir) \
-               --set-package=$(subst .ggo,,$(<F)) \
-               --arg-struct-name=$(subst .ggo,,$(<F))_args_info \
-               --file-name=$(subst .ggo,,$(<F)).cmdline \
-               --func-name $(subst _write.ggo,,$(<F))_cmdline_parser < $<
-
-define ggo-opts
-$(if $(filter gui,$(*F)), --no-handle-error) \
-$(if $(filter recv filter write audiod,$(*F)), --no-handle-help) \
-$(if $(filter afh,$(*F)), --unamed-opts=audio_file) \
-$(if $(filter client audioc,$(*F)), --unamed-opts=command) \
-$(if $(filter fsck,$(*F)), --unamed-opts=table, --conf-parser)\
---output-dir=$(cmdline_dir) \
---no-handle-version \
---file-name=$(*F).cmdline \
---func-name=$(*F)_cmdline_parser \
---arg-struct-name=$(*F)_args_info \
---set-package="para_$(*F)" \
---set-version="$(PACKAGE_VERSION)"
+define ggo_opts
+       --output-dir=$(cmdline_dir) \
+       --set-version="$(PACKAGE_VERSION)" \
+       --arg-struct-name=$(*F)_args_info \
+       --file-name=$(*F).cmdline \
+       --func-name=$(*F)_cmdline_parser \
+       --set-package="para_$(*F)"
 endef
 
 $(cmdline_dir)/%.cmdline.h $(cmdline_dir)/%.cmdline.c: $(ggo_dir)/%.ggo | $(cmdline_dir)
        @[ -z "$(Q)" ] || echo 'GGO $<'
-       $(Q) $(GENGETOPT) $(ggo-opts) < $<
+       $(Q) $(GENGETOPT) $(ggo_opts) < $<
 
 $(ggo_dir)/server.ggo $(ggo_dir)/audiod.ggo: \
        $(m4_ggo_dir)/loglevel.m4 $(m4_ggo_dir)/color.m4 \