Document installation of database functions on MacOS X.
authorTom Hughes <tom@compton.nu>
Fri, 28 Sep 2007 14:57:31 +0000 (14:57 +0000)
committerTom Hughes <tom@compton.nu>
Fri, 28 Sep 2007 14:57:31 +0000 (14:57 +0000)
db/README
db/functions/Makefile

index f4530f09008b3fa2edef36816da7dd4ffb8ae007..d89a67bfb8bfb0603aac985e4dbd5295a3deff66 100644 (file)
--- a/db/README
+++ b/db/README
@@ -29,6 +29,11 @@ Run this command in the db/functions directory:
 
 $ make
 
+The above command should work for linux and most other Unix systems
+that use ELF shared objects. For MacOS X you will need to do:
+
+$ make libquadtile.dylib
+
 Make sure the db/functions directory is on the MySQL server's library
 path and restart the MySQL server. On linux the easiest way to do this
 is to create /etc/ld.so.conf.d/osm.conf and place the path to the
@@ -45,6 +50,11 @@ $ mysql -u <uid> -p openstreetmap
 > create function tile_for_point returns integer soname 'libquadtile.so';
 > exit
 
+or, for MacOS X:
+
+> create function tile_for_point returns integer soname 'libquadtile.dylib';
+> exit
+
 Creating database skeleton tables
 ===================================
 
index 6544db1ff12923e86653d848465522dd55b9e636..ce216e7655d59ce0a3923691aa4dac93547f1000 100644 (file)
@@ -1,4 +1,10 @@
 QTDIR=../../lib/quad_tile
 
-libquadtile.so: quadtile.c ${QTDIR}/quad_tile.h
-       cc `mysql_config --include` -I${QTDIR} -fPIC -O3 -shared -o libquadtile.so quadtile.c
+libquadtile.so: quadtile.o
+       cc -shared -o libquadtile.so quadtile.o
+
+libquadtile.dylib: quadtile.o
+       libtool -dynamic quadtile.o -o libquadtile.dylib
+
+quadtile.o: quadtile.c ${QTDIR}/quad_tile.h
+       cc `mysql_config --include` -I${QTDIR} -fPIC -O3 -c -o quadtile.o quadtile.c