Mac OS X v10.3

From VpriWiki

Jump to: navigation, search

Because recent version of XCode doesn't support Mac OS 10.3 no more. Some modification is needed to build idst on it.

Prerequire

  • Install XCode 1.5.
  • Install November 2004 Gcc Updater.
  • Install macports
  • Install readline, cairo

Fink version of cairo didn't work on 10.3 so I choose macport. But Fink's readline might be better than macports'.

sudo port install readline
sudo port install cairo

a patch

Index: function/jolt-burg/asm-ppc.h
===================================================================
--- function/jolt-burg/asm-ppc.h	(revision 377)
+++ function/jolt-burg/asm-ppc.h	(working copy)
@@ -116,6 +116,14 @@
 #endif
 
 /* primitive instruction forms [1, Section A.4] */
+#undef _I
+#undef _B
+#undef _D
+#undef _X
+#undef _L
+#undef _R
+#undef _P
+#undef _A
 
 #define _I(   OP,         BD,AA,LK )	_GEN((_u6(OP)<<26)|                                              _d26(BD)|   (_u1(AA)<<1)|_u1(LK))
 #define _B(   OP,BO,BI,   BD,AA,LK )  	_GEN((_u6(OP)<<26)|(_u5(BO)<<21)|(_u5(BI)<<16)|                  _d16(BD)|   (_u1(AA)<<1)|_u1(LK))
Index: function/jolt-burg/Makefile
===================================================================
--- function/jolt-burg/Makefile	(revision 377)
+++ function/jolt-burg/Makefile	(working copy)
@@ -1,6 +1,6 @@
 IDC		= ./idc $(OFLAGS)
 OFLAGS		= -g
-IDFLAGS		= -k -I../objects
+IDFLAGS		= -k -I../objects -Wc,"-L/opt/local/lib" -J/opt/local/include
 
 OBJEXT          = 
 OBJEXT_O        = .o
@@ -46,6 +46,7 @@
 jolt.a : $(FILES) ../objects/objects.a
 	ar rc $@.new $(FILES) ../objects/*.o ../objects/mpint/*.o
 	mv $@.new $@
+	ranlib $@
 
 ../objects/objects.a : .FORCE
 	$(SHELL) -ec 'cd ../objects;  $(MAKE)'
Index: function/objects/tag.h
===================================================================
--- function/objects/tag.h	(revision 377)
+++ function/objects/tag.h	(working copy)
@@ -1,2 +1,4 @@
+#undef _I
+#undef _O
 #define _I(O) ((long)(O) >> 1)
 #define _O(I) ((oop)((long)(I) << 1 | 1))
Index: function/canvas/Makefile
===================================================================
--- function/canvas/Makefile	(revision 377)
+++ function/canvas/Makefile	(working copy)
@@ -7,7 +7,7 @@
 XOBJS	= WinWindow.o
 XLIBS	= cairo/*.dll
 else
-XFLAGS	= -J/usr/local/include/cairo
+XFLAGS	= -J/opt/local/include/cairo -J/usr/X11R6/include -Wc,"-L/opt/local/lib"
 XOBJS	= X11Window.o
 XLIBS	= -L/usr/local/lib -L/usr/X11R6/lib -lX11 -lXext -lreadline -lcairo
 endif
@@ -29,6 +29,7 @@
 canvas.a : $(OBJS)
 	ar rc $@.new $(OBJS)
 	mv $@.new $@
+	ranlib $@
 
 run : all
 	./hello
Index: object/boot/Makefile.in
===================================================================
--- object/boot/Makefile.in	(revision 377)
+++ object/boot/Makefile.in	(working copy)
@@ -145,7 +145,7 @@
 ifeq ($(SYSOS),win32)
 	-$(SHELL) -ec 'cd ../$(GCDIR)/; $(MAKE) -f Makefile.win32 ABI_FLAG="$(MFLAGS) -DLARGE_CONFIG"'
 else
-	-$(SHELL) -ec 'cd ../$(GCDIR)/; $(MAKE) ABI_FLAG="$(MFLAGS) -DLARGE_CONFIG"'
+	-$(SHELL) -ec 'cd ../$(GCDIR)/; $(MAKE) ABI_FLAG="$(MFLAGS) -DLARGE_CONFIG" AS_ABI_FLAG=""'
 endif
 
 install : all .FORCE
Personal tools