--- Makefile	2009-01-04 13:47:07.000000000 -0500
+++ Makefile	2009-01-09 00:52:30.000000000 -0500
@@ -29,12 +29,18 @@
   include ./pre.mk
 endif
 
+ifeq ($OS), FREEBSD)
+  LDFLAGS += -Wl,-export-dynamic
+endif
 ifeq ($(OS), LINUX)
   LDFLAGS += -Wl,-export-dynamic
 endif
 
 # set executable stack as a linker option for X86 architecture, for dynamic recompiler
 ifeq ($(CPU), X86)
+  ifeq ($(OS), FREEBSD)
+    LDFLAGS += -z execstack
+  endif
   ifeq ($(OS), LINUX)
     LDFLAGS += -z execstack
   endif
@@ -159,7 +165,7 @@
 # handle dynamic recompiler objects
 ifneq ($(NO_ASM), 1)
   ifeq ($(CPU), X86)
-    ifeq ($(ARCH), 64BITS)
+    ifeq ($(ARCH_DETECTED), 64BITS)
       DYNAREC = x86_64
     else
       DYNAREC = x86
