create-package-feed.pl: Polish file and directory handling
[privoxy.git] / Makefile
index c195c8d..b353f44 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.2 2002/03/24 13:25:42 swa Exp $
+# $Id: Makefile,v 1.11 2006/07/18 14:48:45 david__schmidt Exp $
 #
 # Written by and Copyright (C) 2001 the SourceForge
 # Privoxy team. http://www.privoxy.org/
 # or write to the Free Software Foundation, Inc., 59
 # Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #
-# $Log: Makefile,v $
-# Revision 1.2  2002/03/24 13:25:42  swa
-# name change related issues
-#
-# Revision 1.1  2001/12/01 11:24:29  jongfoster
-# Will display a warning if non-GNU make is used
-#
-#
-
 #############################################################################
 
-error: GNUmakefile
-       @echo
-       @echo "ERROR!"
-       @echo "To build this program, you must run ./configure and then run GNU make."
-       @echo
-       @echo "You are not using the GNU version of Make - maybe it's called gmake"
-       @echo "or it's in a different directory?"
-       @echo
+GNU_MAKE_CMD = gmake
+MAKE_CMD     = make
 
-GNUmakefile:
-       @echo
-       @echo "ERROR!"
-       @echo "To build this program, you must run ./configure and then run GNU make."
-       @echo
-       @echo "You haven't run ./configure yet."
-       @echo
-       @false
+error:
+       @if [ -f GNUmakefile ]; then \
+           echo "***"; \
+           echo "*** You are not using the GNU version of Make - maybe it's called gmake"; \
+           echo "*** or it's in a different PATH? Please read INSTALL." ; \
+           echo "***"; \
+           exit 1; \
+        elif test -n "$(HOST_ARCH)"  && test -z "$(MAKE_VERSION)" ; then \
+           echo "***"; \
+           echo "*** You are not using GNU Make on Solaris, please make sure you do" ; \
+           echo "*** and re-run 'make' "; \
+           echo "***"; \
+           exit 1 ; \
+        elif test -n "$(MACHINE_ARCH)"  && test -z "$(MAKE_VERSION)" ; then \
+           echo "***"; \
+           echo "*** You are not using GNU Make on FreeBSD, please make sure you do" ; \
+           echo "*** and re-run 'make' "; \
+           echo "***"; \
+           exit 1 ; \
+        else \
+           echo "***"; \
+           echo "*** To build this program, you must run"; \
+           echo "*** autoheader && autoconf && ./configure and then run GNU make."; \
+           echo "***"; \
+           echo -n "*** Shall I do this for you now? (y/n) "; \
+           read answer; \
+           if [ "$$answer" = "y" ]; then \
+               autoheader && autoconf && ./configure || exit 1; \
+               if $(GNU_MAKE_CMD) -v |grep GNU >/dev/null 2>/dev/null; then \
+                  $(GNU_MAKE_CMD) ;\
+               elif $(MAKE_CMD) -v |grep GNU >/dev/null 2>/dev/null; then \
+                  $(MAKE_CMD) ;\
+               else \
+                  echo "Neither 'make' nor 'gmake' are GNU compatible!" ; \
+                  echo "Please read INSTALL." ; \
+                  exit 1 ; \
+               fi ;\
+           fi; \
+        fi
 
 .PHONY: error