head	1.2;
access;
symbols
	RELEASE_8_3_0:1.2
	RELEASE_9_0_0:1.2
	RELEASE_7_4_0:1.2
	RELEASE_8_2_0:1.2
	RELEASE_6_EOL:1.2
	RELEASE_8_1_0:1.2
	RELEASE_7_3_0:1.2
	RELEASE_8_0_0:1.2
	RELEASE_7_2_0:1.2
	RELEASE_7_1_0:1.1
	RELEASE_6_4_0:1.1;
locks; strict;
comment	@# @;


1.2
date	2008.12.28.11.47.50;	author miwi;	state Exp;
branches;
next	1.1;

1.1
date	2008.08.05.15.19.14;	author lippe;	state Exp;
branches;
next	;


desc
@@


1.2
log
@- Update to 0.9.6-update3

Notable changes:
- support for FreeBSD/amd64
- a bunch of new libraries
- several bugs are fixed

PR:		129974
Submitted by:	Vitaly Magerya <vmagerya@@gmail.com>
@
text
@--- Makefile.orig	2008-12-23 10:56:02.000000000 +0200
+++ Makefile	2008-12-27 16:33:07.000000000 +0200
@@@@ -1,14 +1,11 @@@@
-#   Makefile for Linux, FreeBSD, OpenBSD, and Darwin
 #   Requirements: GNU Make, GCC 4.0 or later
 #   Options: DESTDIR, PREFIX, DATAMODEL(ILP32/LP64)
 
 PROG 	 = ypsilon
 
-PREFIX 	 = /usr/local
+CPPFLAGS = -DNDEBUG -DSYSTEM_SHARE_PATH='"$(DESTDIR)$(DATADIR)"'
 
-CPPFLAGS = -DNDEBUG -DSYSTEM_SHARE_PATH='"$(DESTDIR)$(PREFIX)/share/$(PROG)"'
-
-CXXFLAGS = -pipe -x c++ -pthread -O3 -fstrict-aliasing -fomit-frame-pointer -momit-leaf-frame-pointer
+CXXFLAGS = -x c++ ${CFLAGS}
 
 SRCS 	 = file.cpp main.cpp vm0.cpp object_heap_compact.cpp subr_flonum.cpp vm1.cpp object_set.cpp \
 	   subr_hash.cpp vm2.cpp object_slab.cpp subr_list.cpp interpreter.cpp serialize.cpp \
@@@@ -60,15 +57,7 @@@@
 endif
 
 ifneq (, $(findstring FreeBSD, $(UNAME)))
-  ifeq ($(shell $(CXX) -dumpspecs | grep 'march=native'), )
-    ifeq ($(DATAMODEL), ILP32)  
-      CXXFLAGS += -march=i686
-    endif
-  else
-    CXXFLAGS += -march=native
-  endif
   CPPFLAGS += -D__LITTLE_ENDIAN__
-  CXXFLAGS += -msse2 -mfpmath=sse  
   ifeq ($(DATAMODEL), ILP32)  
     CPPFLAGS += -DDEFAULT_HEAP_LIMIT=32
     CXXFLAGS += -m32
@@@@ -82,7 +71,7 @@@@
     ASFLAGS = --64
     SRCS += ffi_stub_freebsd64.s
   endif
-  LDLIBS = -pthread
+  LDLIBS = ${PTHREAD_LIBS}
 endif
 
 ifneq (, $(findstring OpenBSD, $(UNAME)))
@@@@ -123,7 +112,6 @@@@
 .PHONY: all install uninstall sitelib stdlib check bench clean distclean
 
 all: $(PROG)
-	@@mkdir -p -m755 $(HOME)/.ypsilon
 
 $(PROG): $(OBJS)
 	$(CXX) $(LDFLAGS) $(LDLIBS) -o $@@ $^
@


1.1
log
@Ypsilon is an implementation of Scheme programming language for real-time
applications, which conforms to the latest standard R^6RS.
Ypsilon features mostly concurrent garbage collector optimized for systems
with multiple CPUs, and an easy to use FFI.

WWW: http://code.google.com/p/ypsilon/

PR:		ports/126015
Submitted by:	Vitaly Magerya <vmagerya@@gmail.com>
Approved by:	gabor (mentor, implicit)
@
text
@d1 6
a6 5
--- Makefile.orig	2008-08-01 04:39:41.000000000 +0300
+++ Makefile	2008-08-02 22:01:30.000000000 +0300
@@@@ -3,13 +3,11 @@@@
 #   Use Win32 native build for Cygwin
 #
d8 1
a8 2
-PROG 	 = ypsilon
+PROG 	 = ${PORTNAME}
d11 1
a11 1
+CPPFLAGS = -DNDEBUG -DDEFAULT_HEAP_LIMIT=32 -DSYSTEM_SHARE_PATH='"${DATADIR}"'
d13 1
a13 1
-CPPFLAGS = -DNDEBUG -DDEFAULT_HEAP_LIMIT=32 -DSYSTEM_SHARE_PATH='"$(PREFIX)/share/$(PROG)"'
d15 32
a46 26
-CXXFLAGS = -x c++ -pthread -msse -mfpmath=sse -O3 -fstrict-aliasing \
+CXXFLAGS = -x c++ ${CFLAGS} \
 	   -fomit-frame-pointer -momit-leaf-frame-pointer \
 	   -fno-align-labels -fno-align-loops -fno-align-jumps
 
@@@@ -25,6 +23,18 @@@@
 
 UNAME 	 = $(shell uname)
 
+ifneq (, $(findstring FreeBSD, $(UNAME)))
+  ifeq ($(shell $(CXX) -dumpspecs | grep 'march=native')), )
+    CXXFLAGS += -m32 -march=i386
+  else
+    CXXFLAGS += -m32# -march=native
+  endif
+  CPPFLAGS += -D__LITTLE_ENDIAN__
+  ASFLAGS = --32
+  LDFLAGS = -m32 ${PTHREAD_LIBS}
+  SRCS += ffi_stub_linux.s
+endif
+
 ifneq (, $(findstring Linux, $(UNAME)))
   ifeq ($(shell $(CXX) -dumpspecs | grep 'march=native')), )
     CXXFLAGS += -m32 -march=i686
@@@@ -48,7 +58,6 @@@@
 .PHONY: all install uninstall sitelib stdlib check bench clean
d52 1
a52 1
 	$(CXX) $(LDFLAGS) -o $@@ $^
@

