From 6855bb873f51efb00c0182d7a9da374d8354deff Mon Sep 17 00:00:00 2001
From: "Kevin P. Fleming" <kpfleming@digium.com>
Date: Tue, 19 Jul 2011 21:32:54 +0000
Subject: [PATCH] Merged revisions 328879 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/2.0

................
  r328879 | kpfleming | 2011-07-19 16:31:16 -0500 (Tue, 19 Jul 2011) | 23 lines

  Merged revisions 328878 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.8

  ........
    r328878 | kpfleming | 2011-07-19 16:29:07 -0500 (Tue, 19 Jul 2011) | 17 lines

    Revert partial attempt at handling pathnames with spaces.

    Revision 299794 attempted to improve the build system to be able to handle
    pathnames (primarily DESTDIR) with spaces in them, since this is common on
    some platforms (including Mac OSX). Unfortunately, the changes were incomplete
    and did not actually provide the desired behavior, and as a side effect the
    functionality that ensured that stale headers in the Asterisk 'include' directory
    were removed got broken. In addition, the check for stale (and possibly
    incompatible) modules in the Asterisk 'modules' directory also got broken, and
    would never report any stale modules. Users upgrading to this version or later
    versions would then see unexpected module load errors.

    Since there are few users who actually want to install Asterisk into paths
    that contain spaces, and a proper fix for the build system would take many hours,
    the best solution for now is to just revert the partial solution.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@328881 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 Makefile              | 52 +++++++++++++++++++++----------------------
 Makefile.moddir_rules |  2 +-
 sounds/Makefile       | 23 ++++---------------
 3 files changed, 31 insertions(+), 46 deletions(-)

diff --git a/Makefile b/Makefile
index fda715702f..87139c1186 100644
--- a/Makefile
+++ b/Makefile
@@ -467,9 +467,9 @@ datafiles: _all doc/core-en_US.xml
 # improved a lot.  I'll put it here for now.
 
 	for x in static-http/*; do \
-		$(INSTALL) -m 644 $$x "$(DESTDIR)$(ASTDATADIR)/static-http" ; \
+		$(INSTALL) -m 644 $$x $(DESTDIR)$(ASTDATADIR)/static-http ; \
 	done
-	$(INSTALL) -m 644 doc/core-en_US.xml "$(DESTDIR)$(ASTDATADIR)/static-http";
+	$(INSTALL) -m 644 doc/core-en_US.xml $(DESTDIR)$(ASTDATADIR)/static-http;
 	if [ -d doc/tex/asterisk ] ; then \
 		$(INSTALL) -d "$(DESTDIR)$(ASTDATADIR)/static-http/docs" ; \
 		for n in doc/tex/asterisk/* ; do \
@@ -477,7 +477,7 @@ datafiles: _all doc/core-en_US.xml
 		done \
 	fi
 	for x in images/*.jpg; do \
-		$(INSTALL) -m 644 $$x "$(DESTDIR)$(ASTDATADIR)/images" ; \
+		$(INSTALL) -m 644 $$x $(DESTDIR)$(ASTDATADIR)/images ; \
 	done
 	$(MAKE) -C sounds install
 
@@ -576,21 +576,21 @@ bininstall: _all installdirs $(SUBDIRS_INSTALL)
 		rm -f $(addprefix $(DESTDIR)$(ASTHEADERDIR)/,$(OLDHEADERS)) ;\
 	fi
 
-	$(INSTALL) -m 644 doc/core-*.xml "$(DESTDIR)$(ASTDATADIR)/documentation"
-	$(INSTALL) -m 644 doc/appdocsxml.dtd "$(DESTDIR)$(ASTDATADIR)/documentation"
-	$(INSTALL) -m 644 doc/asterisk.8 "$(DESTDIR)$(ASTMANDIR)/man8"
-	$(INSTALL) -m 644 contrib/scripts/astgenkey.8 "$(DESTDIR)$(ASTMANDIR)/man8"
-	$(INSTALL) -m 644 contrib/scripts/autosupport.8 "$(DESTDIR)$(ASTMANDIR)/man8"
-	$(INSTALL) -m 644 contrib/scripts/safe_asterisk.8 "$(DESTDIR)$(ASTMANDIR)/man8"
+	$(INSTALL) -m 644 doc/core-*.xml $(DESTDIR)$(ASTDATADIR)/documentation
+	$(INSTALL) -m 644 doc/appdocsxml.dtd $(DESTDIR)$(ASTDATADIR)/documentation
+	$(INSTALL) -m 644 doc/asterisk.8 $(DESTDIR)$(ASTMANDIR)/man8
+	$(INSTALL) -m 644 contrib/scripts/astgenkey.8 $(DESTDIR)$(ASTMANDIR)/man8
+	$(INSTALL) -m 644 contrib/scripts/autosupport.8 $(DESTDIR)$(ASTMANDIR)/man8
+	$(INSTALL) -m 644 contrib/scripts/safe_asterisk.8 $(DESTDIR)$(ASTMANDIR)/man8
 	if [ -f contrib/firmware/iax/iaxy.bin ] ; then \
-		$(INSTALL) -m 644 contrib/firmware/iax/iaxy.bin "$(DESTDIR)$(ASTDATADIR)/firmware/iax/iaxy.bin"; \
+		$(INSTALL) -m 644 contrib/firmware/iax/iaxy.bin $(DESTDIR)$(ASTDATADIR)/firmware/iax/iaxy.bin; \
 	fi
 
 $(SUBDIRS_INSTALL):
 	+@DESTDIR="$(DESTDIR)" ASTSBINDIR="$(ASTSBINDIR)" $(SUBMAKE) -C $(@:-install=) install 
 
 NEWMODS:=$(foreach d,$(MOD_SUBDIRS),$(notdir $(wildcard $(d)/*.so)))
-OLDMODS=$(filter-out $(NEWMODS),$(notdir $(wildcard "$(DESTDIR)$(MODULES_DIR)/*.so")))
+OLDMODS=$(filter-out $(NEWMODS),$(notdir $(wildcard $(DESTDIR)$(MODULES_DIR)/*.so)))
 
 oldmodcheck:
 	@if [ -n "$(OLDMODS)" ]; then \
@@ -698,33 +698,33 @@ samples: adsi
 		rm -f $(DESTDIR)$(ASTCONFPATH).tmp ; \
 	fi ; \
 	$(INSTALL) -d $(DESTDIR)$(ASTSPOOLDIR)/voicemail/default/1234/INBOX
-	build_tools/make_sample_voicemail "$(DESTDIR)$(ASTDATADIR)" "$(DESTDIR)$(ASTSPOOLDIR)"
+	build_tools/make_sample_voicemail $(DESTDIR)/$(ASTDATADIR) $(DESTDIR)/$(ASTSPOOLDIR)
 
 	@for x in phoneprov/*; do \
 		dst="$(DESTDIR)$(ASTDATADIR)/$$x" ;	\
-		if [ -f "$${dst}" ]; then \
+		if [ -f $${dst} ]; then \
 			if [ "$(OVERWRITE)" = "y" ]; then \
-				if cmp -s "$${dst}" $$x ; then \
+				if cmp -s $${dst} $$x ; then \
 					echo "Config file $$x is unchanged"; \
 					continue; \
 				fi ; \
-				mv -f "$${dst}" "$${dst}.old" ; \
+				mv -f $${dst} $${dst}.old ; \
 			else \
 				echo "Skipping config file $$x"; \
 				continue; \
 			fi ;\
 		fi ; \
 		echo "Installing file $$x"; \
-		$(INSTALL) -m 644 $$x "$${dst}" ;\
+		$(INSTALL) -m 644 $$x $${dst} ;\
 	done
 
 webvmail:
 	@[ -d $(DESTDIR)$(HTTP_DOCSDIR)/ ] || ( printf "http docs directory not found.\nUpdate assignment of variable HTTP_DOCSDIR in Makefile!\n" && exit 1 )
 	@[ -d $(DESTDIR)$(HTTP_CGIDIR) ] || ( printf "cgi-bin directory not found.\nUpdate assignment of variable HTTP_CGIDIR in Makefile!\n" && exit 1 )
-	$(INSTALL) -m 4755 contrib/scripts/vmail.cgi "$(DESTDIR)$(HTTP_CGIDIR)/vmail.cgi"
+	$(INSTALL) -m 4755 contrib/scripts/vmail.cgi $(DESTDIR)$(HTTP_CGIDIR)/vmail.cgi
 	$(INSTALL) -d $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk
 	for x in images/*.gif; do \
-		$(INSTALL) -m 644 $$x "$(DESTDIR)$(HTTP_DOCSDIR)/_asterisk/"; \
+		$(INSTALL) -m 644 $$x $(DESTDIR)$(HTTP_DOCSDIR)/_asterisk/; \
 	done
 	@echo " +--------- Asterisk Web Voicemail ----------+"  
 	@echo " +                                           +"
@@ -844,12 +844,12 @@ $(SUBDIRS_UNINSTALL):
 	+@$(SUBMAKE) -C $(@:-uninstall=) uninstall
 
 _uninstall: $(SUBDIRS_UNINSTALL)
-	rm -f "$(DESTDIR)$(MODULES_DIR)/"*
+	rm -f $(DESTDIR)$(MODULES_DIR)/*
 	rm -f $(DESTDIR)$(ASTSBINDIR)/*asterisk*
 	rm -f $(DESTDIR)$(ASTSBINDIR)/astgenkey
 	rm -f $(DESTDIR)$(ASTSBINDIR)/autosupport
 	rm -rf $(DESTDIR)$(ASTHEADERDIR)
-	rm -rf "$(DESTDIR)$(ASTDATADIR)/firmware"
+	rm -rf $(DESTDIR)$(ASTDATADIR)/firmware
 	rm -f $(DESTDIR)$(ASTMANDIR)/man8/asterisk.8
 	rm -f $(DESTDIR)$(ASTMANDIR)/man8/astgenkey.8
 	rm -f $(DESTDIR)$(ASTMANDIR)/man8/autosupport.8
@@ -871,12 +871,12 @@ uninstall: _uninstall
 	@echo " +-------------------------------------------+"  
 
 uninstall-all: _uninstall
-	rm -rf "$(DESTDIR)$(ASTLIBDIR)"
-	rm -rf "$(DESTDIR)$(ASTVARLIBDIR)"
-	rm -rf "$(DESTDIR)$(ASTDATADIR)"
-	rm -rf "$(DESTDIR)$(ASTSPOOLDIR)"
-	rm -rf "$(DESTDIR)$(ASTETCDIR)"
-	rm -rf "$(DESTDIR)$(ASTLOGDIR)"
+	rm -rf $(DESTDIR)$(ASTLIBDIR)
+	rm -rf $(DESTDIR)$(ASTVARLIBDIR)
+	rm -rf $(DESTDIR)$(ASTDATADIR)
+	rm -rf $(DESTDIR)$(ASTSPOOLDIR)
+	rm -rf $(DESTDIR)$(ASTETCDIR)
+	rm -rf $(DESTDIR)$(ASTLOGDIR)
 
 menuconfig: menuselect
 
diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules
index b0bc148acb..b883548afa 100644
--- a/Makefile.moddir_rules
+++ b/Makefile.moddir_rules
@@ -122,7 +122,7 @@ clean::
 
 install:: all
 	@echo "Installing modules from `basename $(CURDIR)`..."
-	@for x in $(LOADABLE_MODS:%=%.so); do $(INSTALL) -m 755 $$x "$(DESTDIR)$(MODULES_DIR)" ; done
+	@for x in $(LOADABLE_MODS:%=%.so); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done
 
 uninstall::
 
diff --git a/sounds/Makefile b/sounds/Makefile
index 178c30c7b5..9826d9fb8e 100644
--- a/sounds/Makefile
+++ b/sounds/Makefile
@@ -15,19 +15,10 @@
 
 -include $(ASTTOPDIR)/menuselect.makeopts $(ASTTOPDIR)/makeopts
 
-# Make doesn't tolerate spaces in pathnames well.  I hate to hardcode the OS X
-# path, but Make doesn't allow spaces as arguments, either.
-ifneq ($(findstring Application Support,$(ASTDATADIR)),)
-TMPDATADIR=/tmp/astdatadir
-PREFIXCMD=ln -sf "$(ASTDATADIR)/" /tmp/astdatadir
-else
-TMPDATADIR=$(ASTDATADIR)
-endif
-
 CMD_PREFIX?=@
-SOUNDS_DIR:=$(DESTDIR)$(TMPDATADIR)/sounds
+SOUNDS_DIR:=$(DESTDIR)$(ASTDATADIR)/sounds
 SOUNDS_CACHE_DIR?=
-MOH_DIR:=$(DESTDIR)$(TMPDATADIR)/moh
+MOH_DIR:=$(DESTDIR)$(ASTDATADIR)/moh
 CORE_SOUNDS_VERSION:=1.4.21
 EXTRA_SOUNDS_VERSION:=1.4.11
 MOH_VERSION:=2.03
@@ -142,13 +133,7 @@ endef
 
 endif
 
-all: prefixcmd $(SOUNDS_CACHE_DIR) $(CORE_SOUNDS) $(EXTRA_SOUNDS) $(MOH)
-
-prefixcmd:
-	if [ -d /tmp/astdatadir ] ; then \
-		rm -rf /tmp/astdatadir ; \
-	fi
-	@$(PREFIXCMD)
+all: $(SOUNDS_CACHE_DIR) $(CORE_SOUNDS) $(EXTRA_SOUNDS) $(MOH)
 
 have_download:
 	@if test "$(DOWNLOAD)" = ":" ; then \
@@ -196,7 +181,7 @@ dist-clean:
 $(SOUNDS_DIR)/en $(MOH_DIR) $(SOUNDS_DIR)/en_AU $(SOUNDS_DIR)/es $(SOUNDS_DIR)/fr $(SOUNDS_DIR)/ru $(SOUNDS_CACHE_DIR):
 	mkdir -p $@
 
-install: prefixcmd $(SOUNDS_CACHE_DIR) $(SOUNDS_DIR)/en $(SOUNDS_DIR)/en_AU $(SOUNDS_DIR)/es $(SOUNDS_DIR)/fr $(SOUNDS_DIR)/ru $(MOH_DIR) $(CORE_SOUND_TAGS) $(EXTRA_SOUND_TAGS) $(MOH_TAGS)
+install: $(SOUNDS_CACHE_DIR) $(SOUNDS_DIR)/en $(SOUNDS_DIR)/en_AU $(SOUNDS_DIR)/es $(SOUNDS_DIR)/fr $(MOH_DIR) $(CORE_SOUND_TAGS) $(EXTRA_SOUND_TAGS) $(MOH_TAGS)
 
 uninstall:
 	rm -rf $(SOUNDS_DIR)
-- 
GitLab