$OpenBSD: patch-xpcom_reflect_xptcall_src_md_unix_Makefile_in,v 1.5 2007/04/01 09:36:16 martynas Exp $
--- xpcom/reflect/xptcall/src/md/unix/Makefile.in.orig	Tue Nov 28 07:29:22 2006
+++ xpcom/reflect/xptcall/src/md/unix/Makefile.in	Wed Mar 28 12:08:58 2007
@@ -68,6 +68,12 @@ CPPSRCS		:= xptcinvoke_unixish_x86.cpp xptcstubs_unixi
 endif
 endif
 #
+# OpenBSD/amd64
+#
+ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDamd64)
+CPPSRCS		:= xptcinvoke_openbsd_amd64.cpp xptcstubs_openbsd_amd64.cpp
+endif
+#
 # New code for Linux, et. al., with gcc
 # Migrate other platforms here after testing
 #
@@ -129,6 +135,12 @@ CPPSRCS		:= xptcinvoke_osf1_alpha.cpp xptcstubs_osf1_a
 ASFILES		:= xptcinvoke_asm_osf1_alpha.s xptcstubs_asm_osf1_alpha.s
 endif
 #
+# OpenBSD/Alpha
+#
+ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDalpha)
+CPPSRCS		:= xptcinvoke_openbsd_alpha.cpp xptcstubs_openbsd_alpha.cpp
+endif
+#
 # Linux/Alpha
 #
 ifneq (,$(filter Linuxalpha FreeBSDalpha NetBSDalpha,$(OS_ARCH)$(OS_TEST)))                           
@@ -162,6 +174,17 @@ ifneq (,$(filter arm% sa110,$(OS_TEST)))
 CPPSRCS		:= xptcinvoke_arm_netbsd.cpp xptcstubs_arm_netbsd.cpp
 endif
 endif
+######################################################################
+#
+# OpenBSD/ARM
+#
+# NOTE: won't work w/o optimizations (-O1, -O2)
+ifeq ($(OS_ARCH),OpenBSD)
+ifneq (,$(filter armish zaurus,$(OS_TEST)))
+CPPSRCS         := xptcinvoke_arm_openbsd.cpp xptcstubs_arm_openbsd.cpp
+CXXFLAGS	+= -O2
+endif
+endif
 
 ######################################################################
 # HPPA
@@ -278,6 +301,14 @@ ASFILES		:= xptcinvoke_asm_ppc_netbsd.s xptcstubs_asm_
 endif
 
 #
+# OpenBSD/PPC
+#
+ifneq (,$(filter OpenBSDmacppc,$(OS_ARCH)$(OS_TEST)))                           
+CPPSRCS		:= xptcinvoke_ppc_openbsd.cpp xptcstubs_ppc_openbsd.cpp
+ASFILES		:= xptcinvoke_asm_ppc_openbsd.s xptcstubs_asm_ppc_openbsd.s
+endif
+
+#
 # Darwin/PPC
 #
 ifeq ($(OS_ARCH),Darwin)
@@ -349,6 +380,20 @@ endif
 endif
 
 endif
+endif
+#
+# OpenBSD/SPARC
+#
+ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc)
+CPPSRCS		:= xptcinvoke_sparc_netbsd.cpp xptcstubs_sparc_netbsd.cpp
+ASFILES		:= xptcinvoke_asm_sparc_netbsd.s xptcstubs_asm_sparc_netbsd.s
+endif
+#   
+# OpenBSD/SPARC64
+#   
+ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc64)
+CPPSRCS		:= xptcinvoke_sparc64_openbsd.cpp xptcstubs_sparc64_openbsd.cpp
+ASFILES		:= xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparcv9_solaris.s
 endif
 
 ######################################################################
