Modify Makefile in order for snappy-java to correctly compile on AIX.
This commit is contained in:
parent
3a833a730b
commit
ce767baab3
|
@ -42,7 +42,7 @@ endif
|
|||
|
||||
# os=Default is meant to be generic unix/linux
|
||||
|
||||
known_os_archs := Linux-x86 Linux-x86_64 Linux-arm Linux-armhf Linux-ppc64 Mac-x86 Mac-x86_64 FreeBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-x86 SunOS-sparc SunOS-x86_64
|
||||
known_os_archs := Linux-x86 Linux-x86_64 Linux-arm Linux-armhf Linux-ppc64 Mac-x86 Mac-x86_64 FreeBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-x86 SunOS-sparc SunOS-x86_64 AIX-ppc64
|
||||
os_arch := $(OS_NAME)-$(OS_ARCH)
|
||||
IBM_JDK_7 := $(findstring IBM, $(shell $(JAVA) -version 2>&1 | grep IBM | grep "JRE 1.7"))
|
||||
|
||||
|
@ -50,12 +50,14 @@ ifeq (,$(findstring $(strip $(os_arch)),$(known_os_archs)))
|
|||
os_arch := Default
|
||||
endif
|
||||
|
||||
os_folder := $(shell echo $(OS_NAME) | tr A-Z a-z)
|
||||
|
||||
ifneq ($(IBM_JDK_7),)
|
||||
$(shell mkdir -p $(IBM_JDK_LIB))
|
||||
$(shell cp $(JAVA_HOME)/include/jniport.h $(IBM_JDK_LIB))
|
||||
$(shell sed -i "s|#define JNIEXPORT *$$|#define JNIEXPORT __attribute__((__visibility__(\"default\")))|" $(IBM_JDK_LIB)/jniport.h)
|
||||
$(shell sed -i "s|typedef long long jlong;.*|/*typedef long long jlong;*/|" $(IBM_JDK_LIB)/jniport.h)
|
||||
$(shell cp $(JAVA_HOME)/include/linux/jni_md.h $(IBM_JDK_LIB))
|
||||
$(shell cp $(JAVA_HOME)/include/$(os_folder)/jni_md.h $(IBM_JDK_LIB))
|
||||
$(shell sed -i "s|#define JNIEXPORT|#define JNIEXPORT __attribute__((__visibility__(\"default\")))|" $(IBM_JDK_LIB)/jni_md.h)
|
||||
$(shell sed -i "s|typedef long long jlong;.*|/*typedef long long jlong;*/|" $(IBM_JDK_LIB)/jni_md.h)
|
||||
endif
|
||||
|
@ -66,7 +68,7 @@ CROSS_PREFIX :=
|
|||
Default_CXX := $(CROSS_PREFIX)g++
|
||||
Default_STRIP := $(CROSS_PREFIX)strip
|
||||
Default_CXXFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_mac -O2 -fPIC -fvisibility=hidden
|
||||
Default_LINKFLAGS := -shared -static -lcrypt
|
||||
Default_LINKFLAGS := -shared -static
|
||||
Default_LIBNAME := libsnappyjava.so
|
||||
Default_SNAPPY_FLAGS :=
|
||||
|
||||
|
@ -103,6 +105,21 @@ Linux-ppc64_LINKFLAGS := -shared -static-libgcc -static-libstdc++
|
|||
Linux-ppc64_LIBNAME := libsnappyjava.so
|
||||
Linux-ppc64_SNAPPY_FLAGS :=
|
||||
|
||||
AIX-ppc64_CXX := g++
|
||||
AIX-ppc64_STRIP := strip -X64
|
||||
#AIX-ppc64_CXXFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_mac -O2 -fPIC -fvisibility=hidden
|
||||
#AIX-ppc64_LINKFLAGS := -shared -static -lcrypt
|
||||
AIX-ppc64_LIBNAME := libsnappy-java.a
|
||||
ifeq ($(IBM_JDK_7),)
|
||||
#AIX-ppc64_CXXFLAGS := -DHAVE_CONFIG_H -Ilib/inc_linux -I$(JAVA_HOME)/include -Ilib/inc_mac -O2 -fPIC -fvisibility=hidden -m64
|
||||
AIX-ppc64_CXXFLAGS := -DHAVE_CONFIG_H -Ilib/inc_linux -I$(JAVA_HOME)/include -Ilib/inc_mac -O2 -fPIC -fvisibility=hidden -m64
|
||||
else
|
||||
#AIX-ppc64_CXXFLAGS := -include $(IBM_JDK_LIB)/jni_md.h -include $(IBM_JDK_LIB)/jniport.h -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/aix -O2 -fPIC
|
||||
AIX-ppc64_CXXFLAGS := -DHAVE_CONFIG_H -I$(JAVA_HOME)/include/aix -Ilib/inc_ibm -I$(JAVA_HOME)/include -Ilib/inc_mac -O2 -fPIC -maix64
|
||||
endif
|
||||
AIX-ppc64_LINKFLAGS := -shared -static-libgcc -static-libstdc++ -lcrypt
|
||||
AIX-ppc64_SNAPPY_FLAGS :=
|
||||
|
||||
SunOS-x86_CXX := g++
|
||||
SunOS-x86_STRIP := strip
|
||||
SunOS-x86_CXXFLAGS := -include lib/inc_linux/jni_md.h -I$(JAVA_HOME)/include -O2 -fPIC -fvisibility=hidden
|
||||
|
@ -193,3 +210,4 @@ ifneq ($(jni_include),)
|
|||
CXXFLAGS := $(CXXFLAGS) -I"$(jni_include)"
|
||||
endif
|
||||
|
||||
|
||||
|
|
|
@ -91,6 +91,7 @@ OsgiKeys.additionalHeaders := Map(
|
|||
"org/xerial/snappy/native/Linux/arm/libsnappyjava.so;osname=linux;processor=arm",
|
||||
"org/xerial/snappy/native/Linux/ppc64/libsnappyjava.so;osname=linux;processor=ppc64",
|
||||
"org/xerial/snappy/native/Linux/ppc64le/libsnappyjava.so;osname=linux;processor=ppc64le",
|
||||
"org/xerial/snappy/native/AIX/ppc64/libsnappyjava.so;osname=aix;processor=ppc64",
|
||||
"org/xerial/snappy/native/SunOS/x86/libsnappyjava.so;osname=sunos;processor=x86",
|
||||
"org/xerial/snappy/native/SunOS/x86_64/libsnappyjava.so;osname=sunos;processor=x86-64",
|
||||
"org/xerial/snappy/native/SunOS/sparc/libsnappyjava.so;osname=sunos;processor=sparc"
|
||||
|
|
|
@ -43,6 +43,7 @@ public class OSInfo
|
|||
public static final String IA64_32 = "ia64_32";
|
||||
public static final String IA64 = "ia64";
|
||||
public static final String PPC = "ppc";
|
||||
public static final String PPC64 = "ppc64";
|
||||
|
||||
static {
|
||||
// x86 mappings
|
||||
|
@ -75,6 +76,11 @@ public class OSInfo
|
|||
archMapping.put("power_rs", PPC);
|
||||
|
||||
// TODO: PowerPC 64bit mappings
|
||||
archMapping.put(PPC64, PPC64);
|
||||
archMapping.put("power64", PPC64);
|
||||
archMapping.put("powerpc64", PPC64);
|
||||
archMapping.put("power_pc64", PPC64);
|
||||
archMapping.put("power_rs64", PPC64);
|
||||
}
|
||||
|
||||
|
||||
|
@ -140,11 +146,10 @@ public class OSInfo
|
|||
else if (osName.contains("Linux")) {
|
||||
return "Linux";
|
||||
}
|
||||
|
||||
|
||||
else if ( osName.contains("AIX")) {
|
||||
else if (osName.contains("AIX")) {
|
||||
return "AIX";
|
||||
}
|
||||
|
||||
else {
|
||||
return osName.replaceAll("\\W", "");
|
||||
}
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue