SF.net SVN: geany-plugins:[1704] trunk/geany-plugins/build/common.m4

hyperair at users.sourceforge.net hyperair at xxxxx
Fri Nov 5 18:32:14 UTC 2010


Revision: 1704
          http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=1704&view=rev
Author:   hyperair
Date:     2010-11-05 18:32:13 +0000 (Fri, 05 Nov 2010)

Log Message:
-----------
Add helper macros for enable/disable plugin granularity

* GP_ARG_DISABLE -- wrapper over AC_ARG_ENABLE for plugins
* GP_CHECK_PLUGIN_DEPS -- wrapper for PKG_CHECK_MODULES

Added Paths:
-----------
    trunk/geany-plugins/build/common.m4

Added: trunk/geany-plugins/build/common.m4
===================================================================
--- trunk/geany-plugins/build/common.m4	                        (rev 0)
+++ trunk/geany-plugins/build/common.m4	2010-11-05 18:32:13 UTC (rev 1704)
@@ -0,0 +1,37 @@
+dnl GP_ARG_DISABLE(PluginName, default)
+dnl - default can either be yes(enabled) or no(disabled)
+dnl Generates --enable/disable options with help strings
+
+AC_DEFUN([GP_ARG_DISABLE],
+[
+    AC_ARG_ENABLE(m4_tolower(AS_TR_SH($1)),
+        AS_HELP_STRING(m4_join(-,
+                               --m4_if($2, no, enable, disable),
+                               m4_tolower(AS_TR_SH($1))),
+                       [Do not build the $1 plugin]),
+        m4_tolower(AS_TR_SH(enable_$1))=$enableval,
+        m4_tolower(AS_TR_SH(enable_$1))=$2)
+
+    dnl if enableval is not auto, then we make the decision here. Otherwise this
+    dnl this needs to be done in GP_CHECK_PLUGIN_DEPS
+    if test "$m4_tolower(AS_TR_SH(enable_$1))" != "auto"; then
+        AM_CONDITIONAL(m4_toupper(ENABLE_$1),
+                       test "m4_tolower($AS_TR_SH(enable_$1))" = "yes")
+    fi
+])
+
+dnl GP_CHECK_PLUGIN_DEPS(PluginName, VARIABLE-PREFIX,  modules...)
+dnl Checks whether modules exist using PKG_CHECK_MODULES, and enables/disables
+dnl plugins appropriately if enable_$plugin=auto
+AC_DEFUN([GP_CHECK_PLUGIN_DEPS],
+[
+    if test "$m4_tolower(AS_TR_SH(enable_$1))" = "yes"; then
+        PKG_CHECK_MODULES($2, $3)
+    elif test "$m4_tolower(AS_TR_SH(enable_$1))" = "auto"; then
+        PKG_CHECK_MODULES($2, $3,
+                          [m4_tolower(AS_TR_SH(enable_$1))=yes],
+                          [m4_tolower(AS_TR_SH(enable_$1))=no])
+    fi
+
+    AM_CONDITIONAL(m4_toupper(ENABLE_$2), test "$m4_tolower(AS_TR_SH(enable_$1_)" = yes)
+])


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the Plugins-Commits mailing list