|
@@ -8,7 +8,7 @@
|
|
VERSION = 0
|
|
VERSION = 0
|
|
PATCHLEVEL = 8
|
|
PATCHLEVEL = 8
|
|
SUBLEVEL = 7
|
|
SUBLEVEL = 7
|
|
-EXTRAVERSION = -13
|
|
|
|
|
|
+EXTRAVERSION = -13-1
|
|
|
|
|
|
RELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
|
|
RELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
|
|
OS = $(shell uname -s)
|
|
OS = $(shell uname -s)
|
|
@@ -177,6 +177,32 @@ $(warning Unknown compiler $(CC)\; supported compilers: \
|
|
gcc, sun cc, intel icc )
|
|
gcc, sun cc, intel icc )
|
|
endif
|
|
endif
|
|
|
|
|
|
|
|
+# find ldname (gnu or solaris)
|
|
|
|
+ifeq ($(ARCH), sparc64)
|
|
|
|
+ifeq ($(CC_NAME), gcc)
|
|
|
|
+ LDGCC=$(shell $(CC) -v 2>&1 | grep with-ld| \
|
|
|
|
+ sed -e 's/.*--with-ld=\([^ ][^ ]*\).*/\1/' )
|
|
|
|
+ LDPATH=$(shell if [ -z "$(LDGCC)" ] ; then echo "ld" ;\
|
|
|
|
+ else \
|
|
|
|
+ if $(LDGCC) -V 2>/dev/null 1>/dev/null; then \
|
|
|
|
+ echo $(LDGCC); \
|
|
|
|
+ else echo "ld" ; \
|
|
|
|
+ fi\
|
|
|
|
+ fi)
|
|
|
|
+
|
|
|
|
+ LDTYPE=$(shell if $(LDPATH) -V 1>/dev/null 2>/dev/null; then \
|
|
|
|
+ if $(LDPATH) -V 2>&1|grep GNU >/dev/null; \
|
|
|
|
+ then echo gnu; \
|
|
|
|
+ else \
|
|
|
|
+ if $(LDPATH) -V 2>&1|grep Solaris >/dev/null;\
|
|
|
|
+ then echo solaris; \
|
|
|
|
+ else \
|
|
|
|
+ echo unknown ; \
|
|
|
|
+ fi \
|
|
|
|
+ fi \
|
|
|
|
+ fi)
|
|
|
|
+endif
|
|
|
|
+endif
|
|
|
|
|
|
# arh. specific definitions
|
|
# arh. specific definitions
|
|
ifeq ($(ARCH), i386)
|
|
ifeq ($(ARCH), i386)
|
|
@@ -322,15 +348,30 @@ endif #ARCH, i386
|
|
|
|
|
|
# setting LDFLAGS
|
|
# setting LDFLAGS
|
|
ifeq ($(CC_NAME), gcc)
|
|
ifeq ($(CC_NAME), gcc)
|
|
- #gcc and maybe others
|
|
|
|
- LDFLAGS+=-Wl,-O2 -Wl,-E $(PROFILE)
|
|
|
|
|
|
+ifeq ($(ARCH), sparc64)
|
|
|
|
+ifeq ($(LDTYPE), solaris)
|
|
|
|
+ # solaris ld
|
|
|
|
+ LDFLAGS+=-O2 $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-G $(LDFLAGS)
|
|
|
|
+else
|
|
|
|
+ #gcc and maybe others, on solaris, with gnu ld
|
|
|
|
+ LDFLAGS+=-Wl,-O2 -Wl,-E $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
|
|
+endif
|
|
|
|
+else
|
|
|
|
+ #gcc and maybe others
|
|
|
|
+ LDFLAGS+=-Wl,-O2 -Wl,-E $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
|
|
+endif
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), icc)
|
|
ifeq ($(CC_NAME), icc)
|
|
#gcc and maybe others
|
|
#gcc and maybe others
|
|
LDFLAGS+=-Wl,-O2 -Wl,-E $(PROFILE)
|
|
LDFLAGS+=-Wl,-O2 -Wl,-E $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), suncc)
|
|
ifeq ($(CC_NAME), suncc)
|
|
LDFLAGS+=-xO5 $(PROFILE)
|
|
LDFLAGS+=-xO5 $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-G $(LDFLAGS)
|
|
endif
|
|
endif
|
|
# we need -fPIC -DPIC only for shared objects, we don't need them for
|
|
# we need -fPIC -DPIC only for shared objects, we don't need them for
|
|
# the executable file, because it's always loaded at a fixed address
|
|
# the executable file, because it's always loaded at a fixed address
|
|
@@ -338,15 +379,28 @@ endif
|
|
else #mode,release
|
|
else #mode,release
|
|
ifeq ($(CC_NAME), gcc)
|
|
ifeq ($(CC_NAME), gcc)
|
|
CFLAGS=-g -Wcast-align -Winline $(PROFILE)
|
|
CFLAGS=-g -Wcast-align -Winline $(PROFILE)
|
|
- LDFLAGS+=-g -Wl,-E $(PROFILE)
|
|
|
|
|
|
+ifeq ($(ARCH), sparc64)
|
|
|
|
+ CFLAGS+= -mcpu=ultrasparc
|
|
|
|
+endif
|
|
|
|
+ifeq ($(LDTYPE), solaris)
|
|
|
|
+ #solaris ld
|
|
|
|
+ LDFLAGS+=-g $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-G $(LDFLAGS)
|
|
|
|
+else
|
|
|
|
+ #gnu or other ld type
|
|
|
|
+ LDFLAGS+=-g -Wl,-E $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
|
|
+endif
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), icc)
|
|
ifeq ($(CC_NAME), icc)
|
|
CFLAGS=-g $(PROFILE)
|
|
CFLAGS=-g $(PROFILE)
|
|
LDFLAGS+=-g -Wl,-E $(PROFILE)
|
|
LDFLAGS+=-g -Wl,-E $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), suncc)
|
|
ifeq ($(CC_NAME), suncc)
|
|
CFLAGS= -g $(PROFILE)
|
|
CFLAGS= -g $(PROFILE)
|
|
LDFLAGS+=-g $(PROFILE)
|
|
LDFLAGS+=-g $(PROFILE)
|
|
|
|
+ MOD_LDFLAGS=-G $(LDFLAGS)
|
|
endif
|
|
endif
|
|
|
|
|
|
endif #mode=release
|
|
endif #mode=release
|
|
@@ -355,15 +409,12 @@ endif #mode=release
|
|
#*FLAGS used for compiling the modules
|
|
#*FLAGS used for compiling the modules
|
|
ifeq ($(CC_NAME), gcc)
|
|
ifeq ($(CC_NAME), gcc)
|
|
MOD_CFLAGS=-fPIC -DPIC $(CFLAGS)
|
|
MOD_CFLAGS=-fPIC -DPIC $(CFLAGS)
|
|
-MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), icc)
|
|
ifeq ($(CC_NAME), icc)
|
|
MOD_CFLAGS=-Kpic $(CFLAGS)
|
|
MOD_CFLAGS=-Kpic $(CFLAGS)
|
|
-MOD_LDFLAGS=-shared $(LDFLAGS)
|
|
|
|
endif
|
|
endif
|
|
ifeq ($(CC_NAME), suncc)
|
|
ifeq ($(CC_NAME), suncc)
|
|
MOD_CFLAGS=-Kpic $(CFLAGS)
|
|
MOD_CFLAGS=-Kpic $(CFLAGS)
|
|
-MOD_LDFLAGS=-G $(LDFLAGS)
|
|
|
|
endif
|
|
endif
|
|
|
|
|
|
LEX=flex
|
|
LEX=flex
|
|
@@ -394,7 +445,7 @@ ifeq ($(OS), SunOS)
|
|
ifeq ($(CC_NAME), suncc)
|
|
ifeq ($(CC_NAME), suncc)
|
|
LIBS=-lfast
|
|
LIBS=-lfast
|
|
endif
|
|
endif
|
|
- LIBS+=-ldl -L/usr/local/lib -L/usr/lib/mysql -lfl -lxnet -lrt
|
|
|
|
|
|
+ LIBS+=-ldl -L/usr/local/lib -L/usr/lib/mysql -lfl -lxnet -lrt -lnsl
|
|
# -lrt needed for sched_yield
|
|
# -lrt needed for sched_yield
|
|
endif
|
|
endif
|
|
|
|
|