[tools] missing-macros: add as-ac-expand.m4
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 29 Dec 2010 09:39:09 +0000 (09:39 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 29 Dec 2010 09:39:09 +0000 (09:39 +0000)
SVN-Revision: 24846

tools/missing-macros/Makefile
tools/missing-macros/src/README
tools/missing-macros/src/m4/as-ac-expand.m4 [new file with mode: 0644]

index 4f75646..1d2726d 100644 (file)
@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=missing-macros
-PKG_VERSION:=6
+PKG_VERSION:=7
 
 include $(INCLUDE_DIR)/host-build.mk
 
index 9d9fbfa..04d8a06 100644 (file)
@@ -61,6 +61,12 @@ XMMS feature detection macros.
   xmms.m4
 
 
+From ao:
+Directory expansion macro for Automake.
+
+  as-ac-expand.m4
+
+
 From OpenWrt:
 Always disable GTK docs.
 
diff --git a/tools/missing-macros/src/m4/as-ac-expand.m4 b/tools/missing-macros/src/m4/as-ac-expand.m4
new file mode 100644 (file)
index 0000000..d6c9e33
--- /dev/null
@@ -0,0 +1,43 @@
+dnl as-ac-expand.m4 0.2.0
+dnl autostars m4 macro for expanding directories using configure's prefix
+dnl thomas@apestaart.org
+
+dnl AS_AC_EXPAND(VAR, CONFIGURE_VAR)
+dnl example
+dnl AS_AC_EXPAND(SYSCONFDIR, $sysconfdir)
+dnl will set SYSCONFDIR to /usr/local/etc if prefix=/usr/local
+
+AC_DEFUN([AS_AC_EXPAND],
+[
+  EXP_VAR=[$1]
+  FROM_VAR=[$2]
+
+  dnl first expand prefix and exec_prefix if necessary
+  prefix_save=$prefix
+  exec_prefix_save=$exec_prefix
+
+  dnl if no prefix given, then use /usr/local, the default prefix
+  if test "x$prefix" = "xNONE"; then
+    prefix="$ac_default_prefix"
+  fi
+  dnl if no exec_prefix given, then use prefix
+  if test "x$exec_prefix" = "xNONE"; then
+    exec_prefix=$prefix
+  fi
+
+  full_var="$FROM_VAR"
+  dnl loop until it doesn't change anymore
+  while true; do
+    new_full_var="`eval echo $full_var`"
+    if test "x$new_full_var" = "x$full_var"; then break; fi
+    full_var=$new_full_var
+  done
+
+  dnl clean up
+  full_var=$new_full_var
+  AC_SUBST([$1], "$full_var")
+
+  dnl restore prefix and exec_prefix
+  prefix=$prefix_save
+  exec_prefix=$exec_prefix_save
+])