$OpenBSD: patch-Makefile,v 1.7 2006/06/12 19:04:10 naddy Exp $
--- Makefile.orig	Sun Apr 30 15:27:56 2006
+++ Makefile	Thu Jun  1 02:36:38 2006
@@ -19,8 +19,8 @@
 # CROSS_COMPILE=/opt/montavista/pro/devkit/arm/xscale_be/bin/xscale_be-
 # CROSS_COMPILE_BIN=/opt/montavista/pro/devkit/arm/xscale_be/bin/
 # CROSS_COMPILE_TARGET=/opt/montavista/pro/devkit/arm/xscale_be/target
-CC=$(CROSS_COMPILE)gcc
-HOST_CC=gcc
+CC?=$(CROSS_COMPILE)gcc
+HOST_CC=$(CC)
 # CROSS_ARCH=Linux
 # CROSS_PROC=arm
 # SUB_PROC=xscale # or maverick
@@ -46,8 +46,12 @@
 #K6OPT  = -DK6OPT
 
 #Tell gcc to optimize the code
+ifeq (${OSARCH},OpenBSD)
+OPTIMIZE+=-O2
+else
 OPTIMIZE+=-O6
 endif
+endif
 
 #Overwite config files on "make samples"
 OVERWRITE=y
@@ -85,7 +89,11 @@
 
 # Where to install asterisk after compiling
 # Default -> leave empty
+ifeq (${OSARCH},OpenBSD)
+INSTALL_PREFIX= ${TRUEPREFIX}
+else
 INSTALL_PREFIX?=
+endif
 
 # Staging directory
 # Files are copied here temporarily during the install process
@@ -107,7 +115,7 @@
 # Don't use together with -DBUSYDETECT_TONEONLY
 BUSYDETECT+= #-DBUSYDETECT_COMPARE_TONE_AND_SILENCE
 
-ifneq ($(OSARCH),SunOS)
+ifeq ($(OSARCH),Linux)
   ASTLIBDIR=$(INSTALL_PREFIX)/usr/lib/asterisk
   ASTVARLIBDIR=$(INSTALL_PREFIX)/var/lib/asterisk
   ASTETCDIR=$(INSTALL_PREFIX)/etc/asterisk
@@ -121,7 +129,25 @@
   ASTMANDIR=$(INSTALL_PREFIX)/usr/share/man
   MODULES_DIR=$(ASTLIBDIR)/modules
   AGI_DIR=$(ASTVARLIBDIR)/agi-bin
-else
+endif
+# OpenBSD has its own packaging mechanism
+ifeq ($(OSARCH),OpenBSD)
+  ASTLIBDIR=$(INSTALL_PREFIX)/lib/asterisk
+  ASTVARLIBDIR=$(INSTALL_PREFIX)/share/asterisk
+  ASTETCDIR=${SYSCONFDIR}/asterisk
+  ASTSPOOLDIR=/var/spool/asterisk
+  ASTLOGDIR=/var/log/asterisk
+  ASTHEADERDIR=$(INSTALL_PREFIX)/include/asterisk
+  ASTCONFPATH=$(ASTETCDIR)/asterisk.conf
+  ASTBINDIR=$(INSTALL_PREFIX)/bin
+  ASTSBINDIR=$(INSTALL_PREFIX)/sbin
+  ASTVARRUNDIR=/var/db/asterisk
+  ASTMANDIR=$(INSTALL_PREFIX)/man
+  
+  MODULES_DIR=$(ASTLIBDIR)/modules
+  AGI_DIR=/var/asterisk/agi-bin
+endif
+ifeq ($(OSARCH),SunOS)
   ASTLIBDIR=$(INSTALL_PREFIX)/opt/asterisk/lib
   ASTVARLIBDIR=$(INSTALL_PREFIX)/var/opt/asterisk/lib
   ASTETCDIR=$(INSTALL_PREFIX)/etc/opt/asterisk
@@ -162,6 +188,8 @@
 # The file, /etc/asterisk.makeopts will also be included, but can be overridden
 # by the file in your home directory.
 
+# OpenBSD wants repeatable builds
+ifneq ($(OSARCH),OpenBSD)
 ifneq ($(wildcard /etc/asterisk.makeopts),)
   include /etc/asterisk.makeopts
 endif
@@ -169,6 +197,7 @@
 ifneq ($(wildcard ~/.asterisk.makeopts),)
   include ~/.asterisk.makeopts
 endif
+endif
 
 ifeq ($(OSARCH),Linux)
   ifeq ($(CROSS_COMPILE),)
@@ -229,8 +258,10 @@
   ASTCFLAGS+=-I$(CROSS_COMPILE_TARGET)/usr/local/include -L$(CROSS_COMPILE_TARGET)/usr/local/lib
 endif
 
-ifneq ($(PROC),ultrasparc)
-  ASTCFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi)
+ifneq (${OSARCH},OpenBSD)
+  ifneq ($(PROC),ultrasparc)
+    ASTCFLAGS+=$(shell if $(CC) -march=$(PROC) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=$(PROC)"; fi)
+  endif
 endif
 
 ifeq ($(PROC),ppc)
@@ -412,6 +443,7 @@
 INSTALL=install
 
 _all: all
+ifneq (${OSARCH},OpenBSD)
 	@echo " +--------- Asterisk Build Complete ---------+"  
 	@echo " + Asterisk has successfully been built, but +"  
 	@echo " + cannot be run before being installed by   +"  
@@ -419,6 +451,7 @@
 	@echo " +                                           +"
 	@echo " +               $(MAKE) install                +"  
 	@echo " +-------------------------------------------+"  
+endif
 
 all: cleantest depend asterisk subdirs 
 
@@ -694,6 +727,7 @@
 	@if [ -x /usr/sbin/asterisk-post-install ]; then \
 		/usr/sbin/asterisk-post-install $(DESTDIR) . ; \
 	fi
+ifneq (${OSARCH},OpenBSD)
 	@echo " +---- Asterisk Installation Complete -------+"  
 	@echo " +                                           +"
 	@echo " +    YOU MUST READ THE SECURITY DOCUMENT    +"
@@ -715,6 +749,7 @@
 	@echo " + **Note** This requires that you have      +"
 	@echo " + doxygen installed on your local system    +"
 	@echo " +-------------------------------------------+"
+endif
 	@$(MAKE) -s oldmodcheck
 
 upgrade: all bininstall
