Преглед на файлове

Fixes to build to make it OSX compatible

Tim Harsch преди 11 години
родител
ревизия
6fc0928dd8

+ 5 - 1
tpcds-gen/Makefile

@@ -1,3 +1,4 @@
+MYOS=$(shell uname -s)
 
 all: target/lib/dsdgen.jar target/tpcds-gen-1.0-SNAPSHOT.jar
 
@@ -15,7 +16,10 @@ target/lib/dsdgen.jar: target/tools/dsdgen
 	cd target/; mkdir -p lib/; ( jar cvf lib/dsdgen.jar tools/ || gjar cvf lib/dsdgen.jar tools/ )
 
 target/tools/dsdgen: target/tpcds_kit.zip
-	test -d target/tools/ || (cd target; unzip tpcds_kit.zip; cd tools; cat ../../*.patch | patch -p0 )
+	pwd
+	test -d target/tools/ || (cd target; unzip tpcds_kit.zip; cd tools; cat ../../patches/all/*.patch | patch -p0 )
+	pwd
+	cd target/tools; cat ../../patches/${MYOS}/*.patch | patch -p1
 	cd target/tools; make clean; make dsdgen
 
 clean:

+ 168 - 0
tpcds-gen/patches/Darwin/macosx.patch

@@ -0,0 +1,168 @@
+diff -rupN tools/Makefile.suite toolsnew/Makefile.suite
+--- tools/Makefile.suite	2012-04-25 11:03:50.000000000 -0700
++++ toolsnew/Makefile.suite	2014-06-25 13:15:00.000000000 -0700
+@@ -38,8 +38,8 @@
+ ################
+ ## TARGET OS HERE
+ ################
+-# OS Values: AIX, LINUX, SOLARIS, NCR, HPUX
+-OS	=	LINUX
++# OS Values: AIX, LINUX, SOLARIS, NCR, HPUX, OSX
++OS	=	OSX
+ ###########
+ # No changes should be necessary below this point
+ # Each compile variable is adjusted for the target platform using the OS setting above
+@@ -47,7 +47,8 @@ OS	=	LINUX
+ # CC
+ AIX_CC		= xlC
+ HPUX_CC		= gcc
+-LINUX_CC		= gcc
++LINUX_CC	= gcc
++OSX_CC		= gcc
+ NCR_CC		= cc
+ SOLARIS_CC	= gcc
+ SOL86_CC	= cc
+@@ -55,7 +56,8 @@ CC		= $($(OS)_CC)
+ # CFLAGS
+ AIX_CFLAGS		= -q64 -O3 -D_LARGE_FILES
+ HPUX_CFLAGS		= -O3 -Wall
+-LINUX_CFLAGS	= -g -Wall
++LINUX_CFLAGS		= -g -Wall
++OSX_CFLAGS		= -g -Wall
+ NCR_CFLAGS		= -g 
+ SOLARIS_CFLAGS	= -O3 -Wall
+ SOL86_CFLAGS	= -O3 
+@@ -65,6 +67,7 @@ CFLAGS			= $(BASE_CFLAGS) -D$(OS) $($(OS
+ AIX_EXE	= 
+ HPUX_EXE	= 
+ LINUX_EXE	= 
++OSX_EXE		= 
+ NCR_EXE		= 
+ SOLARIS_EXE	= 
+ SOL86_EXE	= 
+@@ -73,6 +76,7 @@ EXE		= $($(OS)_EXE)
+ AIX_LEX		= flex
+ HPUX_LEX	= flex
+ LINUX_LEX	= lex
++OSX_LEX		= lex
+ NCR_LEX		= lex
+ SOLARIS_LEX	= lex
+ SOL86_LEX	= lex
+@@ -81,6 +85,7 @@ LEX		= $($(OS)_LEX)
+ AIX_LIBS	= -lm
+ HPUX_LIBS	= -lm -ll
+ LINUX_LIBS	= -lm
++OSX_LIBS	= -lm
+ NCR_LIBS	= -lm -lc89
+ SOLARIS_LIBS	= -ly -ll -lm
+ SOL86_LIBS	= -ly -ll -lm
+@@ -89,6 +94,7 @@ LIBS		= $($(OS)_LIBS)
+ AIX_YACC	= yacc
+ HPUX_YACC	= bison -y
+ LINUX_YACC	= yacc
++OSX_YACC	= yacc
+ NCR_YACC	= yacc
+ SOLARIS_YACC	= yacc
+ SOL86_YACC	= yacc
+@@ -97,6 +103,7 @@ YACC		= $($(OS)_YACC)
+ AIX_YFLAGS	= -d -v
+ HPUX_YFLAGS	= -y -d -v
+ LINUX_YFLAGS	= -d -v
++OSX_YFLAGS	= -d -v
+ NCR_YFLAGS	= -d -v
+ SOLARIS_YFLAGS	= -d -v
+ SOL86_YFLAGS	= -d -v
+diff -rupN tools/config.h toolsnew/config.h
+--- tools/config.h	2012-04-25 11:03:52.000000000 -0700
++++ toolsnew/config.h	2014-06-25 13:15:00.000000000 -0700
+@@ -109,6 +109,18 @@
+ #define FLEX
+ #endif /* LINUX */
+ 
++#ifdef OSX
++#define SUPPORT_64BITS
++#define HUGE_TYPE       int64_t
++#define HUGE_FORMAT     "%lld"
++#define HUGE_COUNT      1
++#define USE_STRING_H
++#define USE_LIMITS_H
++#define MAXINT INT_MAX
++#define USE_STDLIB_H
++#define FLEX
++#endif /* OSX */
++
+ #ifdef SOLARIS
+ #define SUPPORT_64BITS
+ #define HUGE_TYPE	long long 
+diff -rupN tools/makefile toolsnew/makefile
+--- tools/makefile	2012-04-25 11:03:54.000000000 -0700
++++ toolsnew/makefile	2014-06-25 13:15:00.000000000 -0700
+@@ -38,8 +38,8 @@
+ ################
+ ## TARGET OS HERE
+ ################
+-# OS Values: AIX, LINUX, SOLARIS, NCR, HPUX
+-OS	=	LINUX
++# OS Values: AIX, LINUX, SOLARIS, NCR, HPUX, OSX
++OS	=	OSX
+ ###########
+ # No changes should be necessary below this point
+ # Each compile variable is adjusted for the target platform using the OS setting above
+@@ -47,7 +47,8 @@ OS	=	LINUX
+ # CC
+ AIX_CC		= xlC
+ HPUX_CC		= gcc
+-LINUX_CC		= gcc
++LINUX_CC	= gcc
++OSX_CC		= gcc
+ NCR_CC		= cc
+ SOLARIS_CC	= gcc
+ SOL86_CC	= cc
+@@ -56,6 +57,7 @@ CC		= $($(OS)_CC)
+ AIX_CFLAGS		= -q64 -O3 -D_LARGE_FILES
+ HPUX_CFLAGS		= -O3 -Wall
+ LINUX_CFLAGS	= -g -Wall
++OSX_CFLAGS	= -g -Wall -I/usr/include/malloc
+ NCR_CFLAGS		= -g 
+ SOLARIS_CFLAGS	= -O3 -Wall
+ SOL86_CFLAGS	= -O3 
+@@ -65,6 +67,7 @@ CFLAGS			= $(BASE_CFLAGS) -D$(OS) $($(OS
+ AIX_EXE	= 
+ HPUX_EXE	= 
+ LINUX_EXE	= 
++OSX_EXE	= 
+ NCR_EXE		= 
+ SOLARIS_EXE	= 
+ SOL86_EXE	= 
+@@ -73,6 +76,7 @@ EXE		= $($(OS)_EXE)
+ AIX_LEX		= flex
+ HPUX_LEX	= flex
+ LINUX_LEX	= lex
++OSX_LEX		= lex
+ NCR_LEX		= lex
+ SOLARIS_LEX	= lex
+ SOL86_LEX	= lex
+@@ -81,6 +85,7 @@ LEX		= $($(OS)_LEX)
+ AIX_LIBS	= -lm
+ HPUX_LIBS	= -lm -ll
+ LINUX_LIBS	= -lm
++OSX_LIBS	= -lm
+ NCR_LIBS	= -lm -lc89
+ SOLARIS_LIBS	= -ly -ll -lm
+ SOL86_LIBS	= -ly -ll -lm
+@@ -89,6 +94,7 @@ LIBS		= $($(OS)_LIBS)
+ AIX_YACC	= yacc
+ HPUX_YACC	= bison -y
+ LINUX_YACC	= yacc
++OSX_YACC	= yacc
+ NCR_YACC	= yacc
+ SOLARIS_YACC	= yacc
+ SOL86_YACC	= yacc
+@@ -97,6 +103,7 @@ YACC		= $($(OS)_YACC)
+ AIX_YFLAGS	= -d -v
+ HPUX_YFLAGS	= -y -d -v
+ LINUX_YFLAGS	= -d -v
++OSX_YFLAGS	= -d -v
+ NCR_YFLAGS	= -d -v
+ SOLARIS_YFLAGS	= -d -v
+ SOL86_YFLAGS	= -d -v

+ 0 - 0
tpcds-gen/tpcds-buffered.patch → tpcds-gen/patches/all/tpcds-buffered.patch


+ 0 - 0
tpcds-gen/tpcds-strcpy.patch → tpcds-gen/patches/all/tpcds-strcpy.patch


+ 11 - 0
tpcds-gen/patches/all/tpcds_misspelled_header_guard.patch

@@ -0,0 +1,11 @@
+--- w_store_sales.h.orig	2014-06-25 10:58:19.000000000 -0700
++++ w_store_sales.h	2014-06-25 10:58:51.000000000 -0700
+@@ -34,7 +34,7 @@
+  * Gradient Systems
+  */ 
+ #ifndef W_STORE_SALES_H
+-#define W_STORE_SLAES_H
++#define W_STORE_SALES_H
+ 
+ #include "constants.h"
+ #include "pricing.h"