From 2899e43a831395feba7193b08202d30b47278e26 Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Mon, 24 Oct 2016 15:37:21 +0300 Subject: [PATCH 1/6] add android.arm64 cross file --- src/include/cross/android.arm64 | 660 ++++++++++++++++++++++++++++++++ 1 file changed, 660 insertions(+) create mode 100644 src/include/cross/android.arm64 diff --git a/src/include/cross/android.arm64 b/src/include/cross/android.arm64 new file mode 100644 index 00000000000..aa5b31ba915 --- /dev/null +++ b/src/include/cross/android.arm64 @@ -0,0 +1,660 @@ +/* src/include/gen/autoconfig.h. Generated from config.h.in by configure. */ +/* builds/make.new/config/config.h.in. Generated from configure.in by autoheader. */ + +/* log file name within log dir (firebird.log) */ +#define FB_LOGFILENAME "firebird.log" + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define this if CPU is amd64 */ +/* #undef AMD64 */ + +/* Include pthread support for binary relocation? */ +/* #undef BR_PTHREAD */ + +/* Define this if paths are case sensitive */ +#define CASE_SENSITIVITY false + +/* Define this if OS is DARWIN */ +/* #undef DARWIN */ + +/* Use binary relocation? */ +#define ENABLE_BINRELOC + +/* Alignment of long */ +#define FB_ALIGNMENT 8 + +/* executables DIR (PREFIX/bin) */ +#define FB_BINDIR "" + +/* config files DIR (PREFIX) */ +#define FB_CONFDIR "" + +/* documentation root DIR (PREFIX/doc) */ +#define FB_DOCDIR "" + +/* Alignment of double */ +#define FB_DOUBLE_ALIGN 8 + +/* guardian lock DIR (PREFIX) */ +#define FB_GUARDDIR "" + +/* QLI help DIR (PREFIX/help) */ +#define FB_HELPDIR "" + +/* C/C++ header files DIR (PREFIX/include) */ +#define FB_INCDIR "" + +/* international DIR (PREFIX/intl) */ +#define FB_INTLDIR "" + +/* Local IPC name */ +#define FB_IPC_NAME "FirebirdIPI" + +/* object code libraries DIR (PREFIX/lib) */ +#define FB_LIBDIR "" + +/* log files DIR (PREFIX) */ +#define FB_LOGDIR "" + +/* misc DIR (PREFIX/misc) */ +#define FB_MISCDIR "" + +/* message files DIR (PREFIX) */ +#define FB_MSGDIR "" + +/* Wnet pipe name */ +#define FB_PIPE_NAME "interbas" + +/* plugins DIR (PREFIX) */ +#define FB_PLUGDIR "" + +/* Installation path prefix */ +#define FB_PREFIX "/opt/firebird" + +/* examples database DIR (PREFIX/examples/empbuild) */ +#define FB_SAMPLEDBDIR "" + +/* examples DIR (PREFIX/examples) */ +#define FB_SAMPLEDIR "" + +/* system admin executables DIR (PREFIX/bin) */ +#define FB_SBINDIR "" + +/* security database DIR (PREFIX) */ +#define FB_SECDBDIR "" + +/* Inet service name */ +#define FB_SERVICE_NAME "gds_db" + +/* Inet service port */ +#define FB_SERVICE_PORT 3050 + +/* UDF DIR (PREFIX/UDF) */ +#define FB_UDFDIR "" + +/* Define this if OS is FreeBSD */ +/* #undef FREEBSD */ + +/* Define this if getmntent needs second argument */ +/* #undef GETMNTENT_TAKES_TWO_ARGUMENTS */ + +/* Define to 1 if the `getpgrp' function requires zero arguments. */ +#define GETPGRP_VOID 1 + +/* Define this if gettimeofday accepts second (timezone) argument */ +#define GETTIMEOFDAY_RETURNS_TIMEZONE 1 + +/* Define this if GPRE should support ADA */ +/* #undef GPRE_ADA */ + +/* Define this if GPRE should support COBOL */ +/* #undef GPRE_COBOL */ + +/* Define this if GPRE should support FORTRAN */ +/* #undef GPRE_FORTRAN */ + +/* Define this if GPRE should support PASCAL */ +/* #undef GPRE_PASCAL */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_AIO_H */ + +/* Define this if AO_compare_and_swap_full() is defined in atomic_ops.h */ +/* #undef HAVE_AO_COMPARE_AND_SWAP_FULL */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ASSERT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_OPS_H */ + +/* Define to 1 if the system has the type `caddr_t'. */ +/* #undef HAVE_CADDR_T */ + +/* Define to 1 if you have the header file. */ +#define HAVE_CRYPT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_CTYPE_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you have the `dladdr' function. */ +#define HAVE_DLADDR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define this if editline is in use */ +/* #undef HAVE_EDITLINE_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if you have the `fchmod' function. */ +#define HAVE_FCHMOD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `fdatasync' function. */ +#define HAVE_FDATASYNC 1 + +/* Define to 1 if you have the `fegetenv' function. */ +#define HAVE_FEGETENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FLOAT_H 1 + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fork' function. */ +#define HAVE_FORK 1 + +/* Define to 1 if you have the `fsync' function. */ +#define HAVE_FSYNC 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getmntent' function. */ +#define HAVE_GETMNTENT 1 + +/* Define to 1 if you have the `getpagesize' function. */ +#define HAVE_GETPAGESIZE 1 + +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the `getwd' function. */ +#define HAVE_GETWD 1 + +/* Define to 1 if you have the `gmtime_r' function. */ +#define HAVE_GMTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_GRP_H 1 + +/* Define this if INFINITY is defined in math.h */ +#define HAVE_INFINITY 1 + +/* Define to 1 if you have the `initgroups' function. */ +#define HAVE_INITGROUPS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `atomic_ops' library (-latomic_ops). */ +/* #undef HAVE_LIBATOMIC_OPS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBIO_H */ + +/* Define to 1 if you have the `m' library (-lm). */ +#define HAVE_LIBM 1 + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +/* #undef HAVE_LIBPTHREAD */ + +/* Define to 1 if you have the `sfio' library (-lsfio). */ +/* #undef HAVE_LIBSFIO */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the `llrint' function. */ +#define HAVE_LLRINT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LOCALE_H 1 + +/* Define to 1 if you have the `localtime_r' function. */ +#define HAVE_LOCALTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MATH_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mkstemp' function. */ +#define HAVE_MKSTEMP 1 + +/* Define to 1 if you have a working `mmap' system call. */ +#define HAVE_MMAP 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MNTENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MNTTAB_H */ + +/* Define this if multi-threading should be supported */ +#define HAVE_MULTI_THREAD 1 + +/* Define to 1 if you have the `nanosleep' function. */ +#define HAVE_NANOSLEEP 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NETCONFIG_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_NETINET_IN_H 1 + +/* Define to 1 if you have the `poll' function. */ +#define HAVE_POLL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define this if posix_fadvise() is present on the platform */ +/* #undef HAVE_POSIX_FADVISE */ + +/* Define to 1 if you have the `pread' function. */ +#define HAVE_PREAD 1 + +/* Define if you have POSIX threads libraries and header files. */ +/* #undef HAVE_PTHREAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PTHREAD_H 1 + +/* Define to 1 if you have the `pthread_keycreate' function. */ +/* #undef HAVE_PTHREAD_KEYCREATE */ + +/* Define to 1 if you have the `pthread_key_create' function. */ +#define HAVE_PTHREAD_KEY_CREATE 1 + +/* Define to 1 if you have the `pthread_mutexattr_setprotocol' function. */ +/* undef HAVE_PTHREAD_MUTEXATTR_SETPROTOCOL */ + +/* Define to 1 if you have the `pthread_mutexattr_setrobust_np' function. */ +/* #undef HAVE_PTHREAD_MUTEXATTR_SETROBUST_NP */ + +/* Define to 1 if you have the `pthread_mutex_consistent_np' function. */ +/* #undef HAVE_PTHREAD_MUTEX_CONSISTENT_NP */ + +/* Define to 1 if you have the `pthread_rwlockattr_setkind_np' function. */ +/* #undef HAVE_PTHREAD_RWLOCKATTR_SETKIND_NP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PWD_H 1 + +/* Define to 1 if you have the `pwrite' function. */ +#define HAVE_PWRITE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_RPC_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_XDR_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SEMAPHORE_H 1 + +/* Define to 1 if you have the `semtimedop' function. */ +#define HAVE_SEMTIMEDOP 1 + +/* Define to 1 if the system has the type `semun'. */ +/* #undef HAVE_SEMUN */ + +/* Define to 1 if you have the `sem_init' function. */ +#define HAVE_SEM_INIT 1 + +/* Define to 1 if you have the `sem_timedwait' function. */ +#define HAVE_SEM_TIMEDWAIT 1 + +/* Define to 1 if you have the `setitimer' function. */ +#define HAVE_SETITIMER 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SETJMP_H 1 + +/* Define to 1 if you have the `setmntent' function. */ +#define HAVE_SETMNTENT 1 + +/* Define to 1 if you have the `setpgid' function. */ +#define HAVE_SETPGID 1 + +/* Define to 1 if you have the `setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the `sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SIGNAL_H 1 + +/* Define to 1 if you have the `sigset' function. */ +/* #undef HAVE_SIGSET */ + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SOCKET_H */ + +/* Define to 1 if the system has the type `socklen_t'. */ +#define HAVE_SOCKLEN_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDARG_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror_r' function. */ +#define HAVE_STRERROR_R 1 + +/* Define to 1 if you have the `stricmp' function. */ +/* #undef HAVE_STRICMP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncasecmp' function. */ +#define HAVE_STRNCASECMP 1 + +/* Define to 1 if you have the `strnicmp' function. */ +/* #undef HAVE_STRNICMP */ + +/* Define this if struct dirent has d_type */ +#define HAVE_STRUCT_DIRENT_D_TYPE 1 + +/* Define to 1 if the system has the type `struct xdr_ops'. */ +#define HAVE_STRUCT_XDR_OPS 1 + +/* Define to 1 if the system has the type `struct XDR::xdr_ops'. */ +/* #undef HAVE_STRUCT_XDR__XDR_OPS */ + +/* Define to 1 if you have the `swab' function. */ +#define HAVE_SWAB 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_FILE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IOCTL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IPC_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTTAB_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MOUNT_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_RESOURCE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SEM_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGINFO_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGNAL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKIO_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIMEB_H 0 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the `tcgetattr' function. */ +#define HAVE_TCGETATTR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIOS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIO_H 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the `times' function. */ +#define HAVE_TIMES 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UTIME_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VARARGS_H */ + +/* Define this if va_copy() is defined in stdarg.h */ +#define HAVE_VA_COPY 1 + +/* Define to 1 if you have the `vfork' function. */ +#define HAVE_VFORK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VFORK_H */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINSOCK2_H */ + +/* Define to 1 if `fork' works. */ +#define HAVE_WORKING_FORK 1 + +/* Define to 1 if `vfork' works. */ +#define HAVE_WORKING_VFORK 1 + +/* Define to 1 if you have the file `AC_File'. */ +#define HAVE__PROC_SELF_EXE 1 + +/* Define to 1 if you have the `_swab' function. */ +/* #undef HAVE__SWAB */ + +/* Define it if compiler supports ISO syntax for thread-local storage */ +#define HAVE___THREAD 1 + +/* Define this if CPU is HPPA */ +/* #undef HPPA */ + +/* Define this if OS is HP-UX */ +/* #undef HPUX */ + +/* Define this if OS is Linux */ +#define LINUX 1 + +/* Define this if OS is NetBSD */ +/* #undef NETBSD */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* Define to the necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* Define as the return type of signal handlers (`int' or `void'). */ +#define RETSIGTYPE void + +/* Define to 1 if the `setpgrp' function takes no argument. */ +#define SETPGRP_VOID 1 + +/* Architecture is big-edian sh4 */ +/* #undef SHEB */ + +/* Extension for shared libraries */ +#define SHRLIB_EXT "so" + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 8 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 8 + +/* The size of `void *', as computed by sizeof. */ +#define SIZEOF_VOID_P 8 + + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define this if databases on raw devices should be supported */ +#define SUPPORT_RAW_DEVICES 1 + +/* Define to 1 if you can safely include both and . */ +#define TIME_WITH_SYS_TIME 1 + +/* Define this if OS is Windows NT */ +/* #undef WIN_NT */ + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define this if sem_init() works on the platform */ +#define WORKING_SEM_INIT 1 + +/* Number of bits in a file offset, on hosts where this is settable. */ +#define _FILE_OFFSET_BITS 64 + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to `int' if doesn't define. */ +/* #undef gid_t */ + +/* Define to `long int' if does not define. */ +/* #undef off_t */ + +/* Define to `int' if does not define. */ +/* #undef pid_t */ + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define this if OS is Solarix x86 */ +/* #undef solx86 */ + +/* Define to `int' if doesn't define. */ +/* #undef uid_t */ + +/* Define as `fork' if `vfork' does not work. */ +/* #undef vfork */ + +/* Define to empty if the keyword `volatile' does not work. Warning: valid + code using `volatile' can become incorrect without. Disable with care. */ +/* #undef volatile */ + +#ifdef GETTIMEOFDAY_RETURNS_TIMEZONE +#define GETTIMEOFDAY(x) gettimeofday((x), (struct timezone *)0) +#else +#define GETTIMEOFDAY(x) gettimeofday((x)) +#endif + +#ifndef HAVE_SOCKLEN_T +typedef int socklen_t; +#endif From 3387528073b6bd9914477c064afdb2ce04b18c36 Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Mon, 24 Oct 2016 15:41:18 +0300 Subject: [PATCH 2/6] add android arm64 makefile --- builds/posix/make.android.arm64 | 74 +++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 builds/posix/make.android.arm64 diff --git a/builds/posix/make.android.arm64 b/builds/posix/make.android.arm64 new file mode 100644 index 00000000000..c5c67a813e0 --- /dev/null +++ b/builds/posix/make.android.arm64 @@ -0,0 +1,74 @@ + +ifeq ($(NDK),) +$(error Must export NDK location before building for Android) +endif +NDK_ROOT:=$(NDK) +#NDK_LOG:=1 +include $(NDK)/build/core/init.mk + +TOOLCHAIN_DIR:=$(foreach chain, $(NDK_ALL_TOOLCHAINS), $(if $(findstring aarch64, $(chain)), $(chain), )) +# Filter out clang +TEMP_LIST_DIR := $(foreach chain, $(TOOLCHAIN_DIR), $(if $(findstring clang, $(chain)), , $(chain))) +ifdef TEMP_LIST_DIR + TOOLCHAIN_DIR := $(TEMP_LIST_DIR) +endif +# use freshmost compiler +TOOLCHAIN_DIR:=$(lastword $(TOOLCHAIN_DIR)) + +ifeq ($(HOST_TAG64),) +HOST_TAG64:=linux-x86 +endif +NDK_TOOLCHAIN_VERSION:=$(shell echo $(TOOLCHAIN_DIR) | awk -F - '{print $$NF;}') + +CROSS_PLATFORM:=$(NDK)/platforms/android-24/arch-arm64 +CROSS_PREFIX:=$(NDK)/toolchains/$(TOOLCHAIN_DIR)/prebuilt/$(HOST_TAG64)/bin/aarch64-linux-android- + +CXX:=$(CROSS_PREFIX)g++ +CC:=$(CROSS_PREFIX)gcc +AR:=$(CROSS_PREFIX)ar +AS:=$(CROSS_PREFIX)as +LD:=$(CROSS_PREFIX)ld +NM:=$(CROSS_PREFIX)nm +OBJCOPY:=$(CROSS_PREFIX)objcopy +OBJDUMP:=$(CROSS_PREFIX)objdump +RANLIB:=$(CROSS_PREFIX)ranlib +STRIP:=$(CROSS_PREFIX)strip + +COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -DARM64 -pipe -MMD -fPIC -fmessage-length=0 \ + -I$(ROOT)/extern/libtommath --sysroot=$(CROSS_PLATFORM) \ + -I$(CROSS_PLATFORM)/usr/include -I$(ROOT)/gen/cross + +OPTIMIZE_FLAGS=-fno-omit-frame-pointer +WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable + +PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) +DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) + +CROSS_CONFIG=android.arm64 + +LDFLAGS += --sysroot=$(CROSS_PLATFORM) -L$(NDK)/sources/cxx-stl/gnu-libstdc++/$(NDK_TOOLCHAIN_VERSION)/libs/arm64-v8a \ + -L$(NDK)/sources/cxx-stl/gnu-libstdc++/libs/arm64-v8a +DroidLibs := -lm -ldl -lsupc++ + +LINK_LIBS = $(DroidLibs) +STATICLINK_LIBS = $(DroidLibs) +SO_LINK_LIBS = $(DroidLibs) + +EXE_LINK_OPTIONS= $(LDFLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(LINK_EMPTY_SYMBOLS) +LIB_LINK_OPTIONS= $(LDFLAGS) -shared + +UNICODE_DIR := $(shell dirname `find /usr/include -name ucnv.h`) +UNICODE_DIR := $(filter %unicode, $(UNICODE_DIR)) +UNICODE_DIR := $(firstword $(UNICODE_DIR)) +ifndef UNICODE_DIR + $(error ERROR while locating ICU include directory, probably missing ucnv.h) +endif + +.PHONY: prerequisites +prerequisites: $(ROOT)/gen/cross/unicode + +$(ROOT)/gen/cross/unicode: + echo $(UNICODE_DIR) + rm -rf $(ROOT)/gen/cross + mkdir $(ROOT)/gen/cross + ln -s $(UNICODE_DIR) cross/unicode From b03dc6b7f0ed9f2a81c70397c49f3cec4eeccd95 Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Mon, 24 Oct 2016 15:59:13 +0300 Subject: [PATCH 3/6] Deprecated in android-2x --- src/include/cross/android.arm64 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/include/cross/android.arm64 b/src/include/cross/android.arm64 index aa5b31ba915..7dde0fa2fe7 100644 --- a/src/include/cross/android.arm64 +++ b/src/include/cross/android.arm64 @@ -473,7 +473,8 @@ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ -#define HAVE_SYS_TIMEB_H 0 +/* Deprecated in android-24 */ +#undef HAVE_SYS_TIMEB_H /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 From f4200cebbfc391716d6079c36b5be822afa87f77 Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Mon, 24 Oct 2016 18:51:26 +0300 Subject: [PATCH 4/6] Add Android x86_64 cross and makefile --- builds/posix/make.android.x86_64 | 74 ++++ src/include/cross/android.x86_64 | 658 +++++++++++++++++++++++++++++++ 2 files changed, 732 insertions(+) create mode 100644 builds/posix/make.android.x86_64 create mode 100644 src/include/cross/android.x86_64 diff --git a/builds/posix/make.android.x86_64 b/builds/posix/make.android.x86_64 new file mode 100644 index 00000000000..0cb1958223e --- /dev/null +++ b/builds/posix/make.android.x86_64 @@ -0,0 +1,74 @@ + +ifeq ($(NDK),) +$(error Must export NDK location before building for Android) +endif +NDK_ROOT:=$(NDK) +#NDK_LOG:=1 +include $(NDK)/build/core/init.mk + +TOOLCHAIN_DIR:=$(foreach chain, $(NDK_ALL_TOOLCHAINS), $(if $(findstring x86_64, $(chain)), $(chain), )) +# Filter out clang +TEMP_LIST_DIR := $(foreach chain, $(TOOLCHAIN_DIR), $(if $(findstring clang, $(chain)), , $(chain))) +ifdef TEMP_LIST_DIR + TOOLCHAIN_DIR := $(TEMP_LIST_DIR) +endif +# use freshmost compiler +TOOLCHAIN_DIR:=$(lastword $(TOOLCHAIN_DIR)) + +ifeq ($(HOST_TAG64),) +HOST_TAG64:=linux-x86 +endif +NDK_TOOLCHAIN_VERSION:=$(shell echo $(TOOLCHAIN_DIR) | awk -F - '{print $$NF;}') + +CROSS_PLATFORM:=$(NDK)/platforms/android-24/arch-x86_64 +CROSS_PREFIX:=$(NDK)/toolchains/$(TOOLCHAIN_DIR)/prebuilt/$(HOST_TAG64)/bin/x86_64-linux-android- + +CXX:=$(CROSS_PREFIX)g++ +CC:=$(CROSS_PREFIX)gcc +AR:=$(CROSS_PREFIX)ar +AS:=$(CROSS_PREFIX)as +LD:=$(CROSS_PREFIX)ld +NM:=$(CROSS_PREFIX)nm +OBJCOPY:=$(CROSS_PREFIX)objcopy +OBJDUMP:=$(CROSS_PREFIX)objdump +RANLIB:=$(CROSS_PREFIX)ranlib +STRIP:=$(CROSS_PREFIX)strip + +COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -DAMD64 -pipe -MMD -fPIC -fmessage-length=0 \ + -I$(ROOT)/extern/libtommath --sysroot=$(CROSS_PLATFORM) \ + -I$(CROSS_PLATFORM)/usr/include -I$(ROOT)/gen/cross + +OPTIMIZE_FLAGS=-fno-omit-frame-pointer +WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable + +PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) +DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) + +CROSS_CONFIG=android.x86_64 + +LDFLAGS += --sysroot=$(CROSS_PLATFORM) -L$(NDK)/sources/cxx-stl/gnu-libstdc++/$(NDK_TOOLCHAIN_VERSION)/libs/x86_64 \ + -L$(NDK)/sources/cxx-stl/gnu-libstdc++/libs/x86_64 +DroidLibs := -lm -ldl -lsupc++ + +LINK_LIBS = $(DroidLibs) +STATICLINK_LIBS = $(DroidLibs) +SO_LINK_LIBS = $(DroidLibs) + +EXE_LINK_OPTIONS= $(LDFLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(LINK_EMPTY_SYMBOLS) +LIB_LINK_OPTIONS= $(LDFLAGS) -shared + +UNICODE_DIR := $(shell dirname `find /usr/include -name ucnv.h`) +UNICODE_DIR := $(filter %unicode, $(UNICODE_DIR)) +UNICODE_DIR := $(firstword $(UNICODE_DIR)) +ifndef UNICODE_DIR + $(error ERROR while locating ICU include directory, probably missing ucnv.h) +endif + +.PHONY: prerequisites +prerequisites: $(ROOT)/gen/cross/unicode + +$(ROOT)/gen/cross/unicode: + echo $(UNICODE_DIR) + rm -rf $(ROOT)/gen/cross + mkdir $(ROOT)/gen/cross + ln -s $(UNICODE_DIR) cross/unicode diff --git a/src/include/cross/android.x86_64 b/src/include/cross/android.x86_64 new file mode 100644 index 00000000000..d461a6e375f --- /dev/null +++ b/src/include/cross/android.x86_64 @@ -0,0 +1,658 @@ +/* src/include/gen/autoconfig.h. Generated from config.h.in by configure. */ +/* builds/make.new/config/config.h.in. Generated from configure.in by autoheader. */ + +/* log file name within log dir (firebird.log) */ +#define FB_LOGFILENAME "firebird.log" + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define this if CPU is amd64 */ +/* #undef AMD64 */ + +/* Include pthread support for binary relocation? */ +/* #undef BR_PTHREAD */ + +/* Define this if paths are case sensitive */ +#define CASE_SENSITIVITY false + +/* Define this if OS is DARWIN */ +/* #undef DARWIN */ + +/* Use binary relocation? */ +#define ENABLE_BINRELOC + +/* Alignment of long */ +#define FB_ALIGNMENT 8 + +/* executables DIR (PREFIX/bin) */ +#define FB_BINDIR "" + +/* config files DIR (PREFIX) */ +#define FB_CONFDIR "" + +/* documentation root DIR (PREFIX/doc) */ +#define FB_DOCDIR "" + +/* Alignment of double */ +#define FB_DOUBLE_ALIGN 8 + +/* guardian lock DIR (PREFIX) */ +#define FB_GUARDDIR "" + +/* QLI help DIR (PREFIX/help) */ +#define FB_HELPDIR "" + +/* C/C++ header files DIR (PREFIX/include) */ +#define FB_INCDIR "" + +/* international DIR (PREFIX/intl) */ +#define FB_INTLDIR "" + +/* Local IPC name */ +#define FB_IPC_NAME "FirebirdIPI" + +/* object code libraries DIR (PREFIX/lib) */ +#define FB_LIBDIR "" + +/* log files DIR (PREFIX) */ +#define FB_LOGDIR "" + +/* misc DIR (PREFIX/misc) */ +#define FB_MISCDIR "" + +/* message files DIR (PREFIX) */ +#define FB_MSGDIR "" + +/* Wnet pipe name */ +#define FB_PIPE_NAME "interbas" + +/* plugins DIR (PREFIX) */ +#define FB_PLUGDIR "" + +/* Installation path prefix */ +#define FB_PREFIX "/opt/firebird" + +/* examples database DIR (PREFIX/examples/empbuild) */ +#define FB_SAMPLEDBDIR "" + +/* examples DIR (PREFIX/examples) */ +#define FB_SAMPLEDIR "" + +/* system admin executables DIR (PREFIX/bin) */ +#define FB_SBINDIR "" + +/* security database DIR (PREFIX) */ +#define FB_SECDBDIR "" + +/* Inet service name */ +#define FB_SERVICE_NAME "gds_db" + +/* Inet service port */ +#define FB_SERVICE_PORT 3050 + +/* UDF DIR (PREFIX/UDF) */ +#define FB_UDFDIR "" + +/* Define this if OS is FreeBSD */ +/* #undef FREEBSD */ + +/* Define this if getmntent needs second argument */ +/* #undef GETMNTENT_TAKES_TWO_ARGUMENTS */ + +/* Define to 1 if the `getpgrp' function requires zero arguments. */ +#define GETPGRP_VOID 1 + +/* Define this if gettimeofday accepts second (timezone) argument */ +#define GETTIMEOFDAY_RETURNS_TIMEZONE 1 + +/* Define this if GPRE should support ADA */ +/* #undef GPRE_ADA */ + +/* Define this if GPRE should support COBOL */ +/* #undef GPRE_COBOL */ + +/* Define this if GPRE should support FORTRAN */ +/* #undef GPRE_FORTRAN */ + +/* Define this if GPRE should support PASCAL */ +/* #undef GPRE_PASCAL */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_AIO_H */ + +/* Define this if AO_compare_and_swap_full() is defined in atomic_ops.h */ +/* #undef HAVE_AO_COMPARE_AND_SWAP_FULL */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ASSERT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_OPS_H */ + +/* Define to 1 if the system has the type `caddr_t'. */ +/* #undef HAVE_CADDR_T */ + +/* Define to 1 if you have the header file. */ +#define HAVE_CRYPT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_CTYPE_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you have the `dladdr' function. */ +#define HAVE_DLADDR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define this if editline is in use */ +/* #undef HAVE_EDITLINE_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if you have the `fchmod' function. */ +#define HAVE_FCHMOD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `fdatasync' function. */ +#define HAVE_FDATASYNC 1 + +/* Define to 1 if you have the `fegetenv' function. */ +#define HAVE_FEGETENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FLOAT_H 1 + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fork' function. */ +#define HAVE_FORK 1 + +/* Define to 1 if you have the `fsync' function. */ +#define HAVE_FSYNC 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getmntent' function. */ +#define HAVE_GETMNTENT 1 + +/* Define to 1 if you have the `getpagesize' function. */ +#define HAVE_GETPAGESIZE 1 + +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the `getwd' function. */ +#define HAVE_GETWD 1 + +/* Define to 1 if you have the `gmtime_r' function. */ +#define HAVE_GMTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_GRP_H 1 + +/* Define this if INFINITY is defined in math.h */ +#define HAVE_INFINITY 1 + +/* Define to 1 if you have the `initgroups' function. */ +#define HAVE_INITGROUPS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `atomic_ops' library (-latomic_ops). */ +/* #undef HAVE_LIBATOMIC_OPS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBIO_H */ + +/* Define to 1 if you have the `m' library (-lm). */ +#define HAVE_LIBM 1 + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +/* #undef HAVE_LIBPTHREAD */ + +/* Define to 1 if you have the `sfio' library (-lsfio). */ +/* #undef HAVE_LIBSFIO */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the `llrint' function. */ +#define HAVE_LLRINT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LOCALE_H 1 + +/* Define to 1 if you have the `localtime_r' function. */ +#define HAVE_LOCALTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MATH_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mkstemp' function. */ +#define HAVE_MKSTEMP 1 + +/* Define to 1 if you have a working `mmap' system call. */ +#define HAVE_MMAP 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MNTENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MNTTAB_H */ + +/* Define this if multi-threading should be supported */ +#define HAVE_MULTI_THREAD 1 + +/* Define to 1 if you have the `nanosleep' function. */ +#define HAVE_NANOSLEEP 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NETCONFIG_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_NETINET_IN_H 1 + +/* Define to 1 if you have the `poll' function. */ +#define HAVE_POLL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define this if posix_fadvise() is present on the platform */ +/* #undef HAVE_POSIX_FADVISE */ + +/* Define to 1 if you have the `pread' function. */ +#define HAVE_PREAD 1 + +/* Define if you have POSIX threads libraries and header files. */ +/* #undef HAVE_PTHREAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PTHREAD_H 1 + +/* Define to 1 if you have the `pthread_keycreate' function. */ +/* #undef HAVE_PTHREAD_KEYCREATE */ + +/* Define to 1 if you have the `pthread_key_create' function. */ +#define HAVE_PTHREAD_KEY_CREATE 1 + +/* Define to 1 if you have the `pthread_mutexattr_setprotocol' function. */ +/* undef HAVE_PTHREAD_MUTEXATTR_SETPROTOCOL */ + +/* Define to 1 if you have the `pthread_mutexattr_setrobust_np' function. */ +/* #undef HAVE_PTHREAD_MUTEXATTR_SETROBUST_NP */ + +/* Define to 1 if you have the `pthread_mutex_consistent_np' function. */ +/* #undef HAVE_PTHREAD_MUTEX_CONSISTENT_NP */ + +/* Define to 1 if you have the `pthread_rwlockattr_setkind_np' function. */ +/* #undef HAVE_PTHREAD_RWLOCKATTR_SETKIND_NP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PWD_H 1 + +/* Define to 1 if you have the `pwrite' function. */ +#define HAVE_PWRITE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_RPC_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_XDR_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SEMAPHORE_H 1 + +/* Define to 1 if you have the `semtimedop' function. */ +#define HAVE_SEMTIMEDOP 1 + +/* Define to 1 if the system has the type `semun'. */ +/* #undef HAVE_SEMUN */ + +/* Define to 1 if you have the `sem_init' function. */ +#define HAVE_SEM_INIT 1 + +/* Define to 1 if you have the `sem_timedwait' function. */ +#define HAVE_SEM_TIMEDWAIT 1 + +/* Define to 1 if you have the `setitimer' function. */ +#define HAVE_SETITIMER 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SETJMP_H 1 + +/* Define to 1 if you have the `setmntent' function. */ +#define HAVE_SETMNTENT 1 + +/* Define to 1 if you have the `setpgid' function. */ +#define HAVE_SETPGID 1 + +/* Define to 1 if you have the `setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the `sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SIGNAL_H 1 + +/* Define to 1 if you have the `sigset' function. */ +/* #undef HAVE_SIGSET */ + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SOCKET_H */ + +/* Define to 1 if the system has the type `socklen_t'. */ +#define HAVE_SOCKLEN_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDARG_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror_r' function. */ +#define HAVE_STRERROR_R 1 + +/* Define to 1 if you have the `stricmp' function. */ +/* #undef HAVE_STRICMP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncasecmp' function. */ +#define HAVE_STRNCASECMP 1 + +/* Define to 1 if you have the `strnicmp' function. */ +/* #undef HAVE_STRNICMP */ + +/* Define this if struct dirent has d_type */ +#define HAVE_STRUCT_DIRENT_D_TYPE 1 + +/* Define to 1 if the system has the type `struct xdr_ops'. */ +#define HAVE_STRUCT_XDR_OPS 1 + +/* Define to 1 if the system has the type `struct XDR::xdr_ops'. */ +/* #undef HAVE_STRUCT_XDR__XDR_OPS */ + +/* Define to 1 if you have the `swab' function. */ +#define HAVE_SWAB 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_FILE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IOCTL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IPC_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTTAB_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MOUNT_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_RESOURCE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SEM_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGINFO_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGNAL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKIO_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +/* Deprecated in android-24 */ +#undef HAVE_SYS_TIMEB_H + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the `tcgetattr' function. */ +#define HAVE_TCGETATTR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIOS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIO_H 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the `times' function. */ +#define HAVE_TIMES 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UTIME_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VARARGS_H */ + +/* Define this if va_copy() is defined in stdarg.h */ +#define HAVE_VA_COPY 1 + +/* Define to 1 if you have the `vfork' function. */ +#define HAVE_VFORK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VFORK_H */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINSOCK2_H */ + +/* Define to 1 if `fork' works. */ +#define HAVE_WORKING_FORK 1 + +/* Define to 1 if `vfork' works. */ +#define HAVE_WORKING_VFORK 1 + +/* Define to 1 if you have the file `AC_File'. */ +#define HAVE__PROC_SELF_EXE 1 + +/* Define to 1 if you have the `_swab' function. */ +/* #undef HAVE__SWAB */ + +/* Define it if compiler supports ISO syntax for thread-local storage */ +#define HAVE___THREAD 1 + +/* Define this if CPU is HPPA */ +/* #undef HPPA */ + +/* Define this if OS is HP-UX */ +/* #undef HPUX */ + +/* Define this if OS is Linux */ +#define LINUX 1 + +/* Define this if OS is NetBSD */ +/* #undef NETBSD */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* Define to the necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* Define as the return type of signal handlers (`int' or `void'). */ +#define RETSIGTYPE void + +/* Define to 1 if the `setpgrp' function takes no argument. */ +#define SETPGRP_VOID 1 + +/* Architecture is big-edian sh4 */ +/* #undef SHEB */ + +/* Extension for shared libraries */ +#define SHRLIB_EXT "so" + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 8 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 8 + +/* The size of `void *', as computed by sizeof. */ +#define SIZEOF_VOID_P 8 + + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define this if databases on raw devices should be supported */ +#define SUPPORT_RAW_DEVICES 1 + +/* Define to 1 if you can safely include both and . */ +#define TIME_WITH_SYS_TIME 1 + +/* Define this if OS is Windows NT */ +/* #undef WIN_NT */ + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define this if sem_init() works on the platform */ +#define WORKING_SEM_INIT 1 + +/* Number of bits in a file offset, on hosts where this is settable. */ +#define _FILE_OFFSET_BITS 64 + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to `int' if doesn't define. */ +/* #undef gid_t */ + +/* Define to `long int' if does not define. */ +/* #undef off_t */ + +/* Define to `int' if does not define. */ +/* #undef pid_t */ + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define to `int' if doesn't define. */ +/* #undef uid_t */ + +/* Define as `fork' if `vfork' does not work. */ +/* #undef vfork */ + +/* Define to empty if the keyword `volatile' does not work. Warning: valid + code using `volatile' can become incorrect without. Disable with care. */ +/* #undef volatile */ + +#ifdef GETTIMEOFDAY_RETURNS_TIMEZONE +#define GETTIMEOFDAY(x) gettimeofday((x), (struct timezone *)0) +#else +#define GETTIMEOFDAY(x) gettimeofday((x)) +#endif + +#ifndef HAVE_SOCKLEN_T +typedef int socklen_t; +#endif From d871e45d007fbbaedef1ba3be7cbd1035005e6a5 Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Tue, 25 Oct 2016 16:48:06 +0300 Subject: [PATCH 5/6] Add Android x86 32bit makefile and cross --- builds/posix/make.android.x86 | 82 +++++ src/include/cross/android.x86 | 658 ++++++++++++++++++++++++++++++++++ 2 files changed, 740 insertions(+) create mode 100644 builds/posix/make.android.x86 create mode 100644 src/include/cross/android.x86 diff --git a/builds/posix/make.android.x86 b/builds/posix/make.android.x86 new file mode 100644 index 00000000000..a4acc47599d --- /dev/null +++ b/builds/posix/make.android.x86 @@ -0,0 +1,82 @@ + +ifeq ($(NDK),) +$(error Must export NDK location before building for Android) +endif +NDK_ROOT:=$(NDK) +#NDK_LOG:=1 +include $(NDK)/build/core/init.mk + +TOOLCHAIN_DIR:=$(foreach chain, $(NDK_ALL_TOOLCHAINS), $(if $(findstring x86, $(chain)), $(chain), )) +# Filter out clang +TEMP_LIST_DIR := $(foreach chain, $(TOOLCHAIN_DIR), $(if $(findstring clang, $(chain)), , $(chain))) +ifdef TEMP_LIST_DIR + TOOLCHAIN_DIR := $(TEMP_LIST_DIR) +endif + +# Filter out x86_64 +TEMP_LIST_DIR := $(foreach chain, $(TOOLCHAIN_DIR), $(if $(findstring x86_64, $(chain)), , $(chain))) +ifdef TEMP_LIST_DIR + TOOLCHAIN_DIR := $(TEMP_LIST_DIR) +endif + + +# use freshmost compiler +TOOLCHAIN_DIR:=$(lastword $(TOOLCHAIN_DIR)) + +ifeq ($(HOST_TAG64),) +HOST_TAG64:=linux-x86 +endif +NDK_TOOLCHAIN_VERSION:=$(shell echo $(TOOLCHAIN_DIR) | awk -F - '{print $$NF;}') + +CROSS_PLATFORM:=$(NDK)/platforms/android-24/arch-x86 +CROSS_PREFIX:=$(NDK)/toolchains/$(TOOLCHAIN_DIR)/prebuilt/$(HOST_TAG64)/bin/i686-linux-android- + +CXX:=$(CROSS_PREFIX)g++ +CC:=$(CROSS_PREFIX)gcc +AR:=$(CROSS_PREFIX)ar +AS:=$(CROSS_PREFIX)as +LD:=$(CROSS_PREFIX)ld +NM:=$(CROSS_PREFIX)nm +OBJCOPY:=$(CROSS_PREFIX)objcopy +OBJDUMP:=$(CROSS_PREFIX)objdump +RANLIB:=$(CROSS_PREFIX)ranlib +STRIP:=$(CROSS_PREFIX)strip + +COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -pipe -MMD -fPIC -fmessage-length=0 \ + -I$(ROOT)/extern/libtommath --sysroot=$(CROSS_PLATFORM) \ + -I$(CROSS_PLATFORM)/usr/include -I$(ROOT)/gen/cross + +OPTIMIZE_FLAGS=-fno-omit-frame-pointer +WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable + +PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) +DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) + +CROSS_CONFIG=android.x86 + +LDFLAGS += --sysroot=$(CROSS_PLATFORM) -L$(NDK)/sources/cxx-stl/gnu-libstdc++/$(NDK_TOOLCHAIN_VERSION)/libs/x86 \ + -L$(NDK)/sources/cxx-stl/gnu-libstdc++/libs/x86 +DroidLibs := -lm -ldl -lsupc++ + +LINK_LIBS = $(DroidLibs) +STATICLINK_LIBS = $(DroidLibs) +SO_LINK_LIBS = $(DroidLibs) + +EXE_LINK_OPTIONS= $(LDFLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(LINK_EMPTY_SYMBOLS) +LIB_LINK_OPTIONS= $(LDFLAGS) -shared + +UNICODE_DIR := $(shell dirname `find /usr/include -name ucnv.h`) +UNICODE_DIR := $(filter %unicode, $(UNICODE_DIR)) +UNICODE_DIR := $(firstword $(UNICODE_DIR)) +ifndef UNICODE_DIR + $(error ERROR while locating ICU include directory, probably missing ucnv.h) +endif + +.PHONY: prerequisites +prerequisites: $(ROOT)/gen/cross/unicode + +$(ROOT)/gen/cross/unicode: + echo $(UNICODE_DIR) + rm -rf $(ROOT)/gen/cross + mkdir $(ROOT)/gen/cross + ln -s $(UNICODE_DIR) cross/unicode diff --git a/src/include/cross/android.x86 b/src/include/cross/android.x86 new file mode 100644 index 00000000000..b1e43b42930 --- /dev/null +++ b/src/include/cross/android.x86 @@ -0,0 +1,658 @@ +/* src/include/gen/autoconfig.h. Generated from config.h.in by configure. */ +/* builds/make.new/config/config.h.in. Generated from configure.in by autoheader. */ + +/* log file name within log dir (firebird.log) */ +#define FB_LOGFILENAME "firebird.log" + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define this if CPU is amd64 */ +/* #undef AMD64 */ + +/* Include pthread support for binary relocation? */ +/* #undef BR_PTHREAD */ + +/* Define this if paths are case sensitive */ +#define CASE_SENSITIVITY false + +/* Define this if OS is DARWIN */ +/* #undef DARWIN */ + +/* Use binary relocation? */ +#define ENABLE_BINRELOC + +/* Alignment of long */ +#define FB_ALIGNMENT 8 + +/* executables DIR (PREFIX/bin) */ +#define FB_BINDIR "" + +/* config files DIR (PREFIX) */ +#define FB_CONFDIR "" + +/* documentation root DIR (PREFIX/doc) */ +#define FB_DOCDIR "" + +/* Alignment of double */ +#define FB_DOUBLE_ALIGN 8 + +/* guardian lock DIR (PREFIX) */ +#define FB_GUARDDIR "" + +/* QLI help DIR (PREFIX/help) */ +#define FB_HELPDIR "" + +/* C/C++ header files DIR (PREFIX/include) */ +#define FB_INCDIR "" + +/* international DIR (PREFIX/intl) */ +#define FB_INTLDIR "" + +/* Local IPC name */ +#define FB_IPC_NAME "FirebirdIPI" + +/* object code libraries DIR (PREFIX/lib) */ +#define FB_LIBDIR "" + +/* log files DIR (PREFIX) */ +#define FB_LOGDIR "" + +/* misc DIR (PREFIX/misc) */ +#define FB_MISCDIR "" + +/* message files DIR (PREFIX) */ +#define FB_MSGDIR "" + +/* Wnet pipe name */ +#define FB_PIPE_NAME "interbas" + +/* plugins DIR (PREFIX) */ +#define FB_PLUGDIR "" + +/* Installation path prefix */ +#define FB_PREFIX "/opt/firebird" + +/* examples database DIR (PREFIX/examples/empbuild) */ +#define FB_SAMPLEDBDIR "" + +/* examples DIR (PREFIX/examples) */ +#define FB_SAMPLEDIR "" + +/* system admin executables DIR (PREFIX/bin) */ +#define FB_SBINDIR "" + +/* security database DIR (PREFIX) */ +#define FB_SECDBDIR "" + +/* Inet service name */ +#define FB_SERVICE_NAME "gds_db" + +/* Inet service port */ +#define FB_SERVICE_PORT 3050 + +/* UDF DIR (PREFIX/UDF) */ +#define FB_UDFDIR "" + +/* Define this if OS is FreeBSD */ +/* #undef FREEBSD */ + +/* Define this if getmntent needs second argument */ +/* #undef GETMNTENT_TAKES_TWO_ARGUMENTS */ + +/* Define to 1 if the `getpgrp' function requires zero arguments. */ +#define GETPGRP_VOID 1 + +/* Define this if gettimeofday accepts second (timezone) argument */ +#define GETTIMEOFDAY_RETURNS_TIMEZONE 1 + +/* Define this if GPRE should support ADA */ +/* #undef GPRE_ADA */ + +/* Define this if GPRE should support COBOL */ +/* #undef GPRE_COBOL */ + +/* Define this if GPRE should support FORTRAN */ +/* #undef GPRE_FORTRAN */ + +/* Define this if GPRE should support PASCAL */ +/* #undef GPRE_PASCAL */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_AIO_H */ + +/* Define this if AO_compare_and_swap_full() is defined in atomic_ops.h */ +/* #undef HAVE_AO_COMPARE_AND_SWAP_FULL */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ASSERT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ATOMIC_OPS_H */ + +/* Define to 1 if the system has the type `caddr_t'. */ +/* #undef HAVE_CADDR_T */ + +/* Define to 1 if you have the header file. */ +#define HAVE_CRYPT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_CTYPE_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you have the `dladdr' function. */ +#define HAVE_DLADDR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define this if editline is in use */ +/* #undef HAVE_EDITLINE_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if you have the `fchmod' function. */ +#define HAVE_FCHMOD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `fdatasync' function. */ +#define HAVE_FDATASYNC 1 + +/* Define to 1 if you have the `fegetenv' function. */ +#define HAVE_FEGETENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FLOAT_H 1 + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fork' function. */ +#define HAVE_FORK 1 + +/* Define to 1 if you have the `fsync' function. */ +#define HAVE_FSYNC 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getmntent' function. */ +#define HAVE_GETMNTENT 1 + +/* Define to 1 if you have the `getpagesize' function. */ +#define HAVE_GETPAGESIZE 1 + +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the `getwd' function. */ +#define HAVE_GETWD 1 + +/* Define to 1 if you have the `gmtime_r' function. */ +#define HAVE_GMTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_GRP_H 1 + +/* Define this if INFINITY is defined in math.h */ +#define HAVE_INFINITY 1 + +/* Define to 1 if you have the `initgroups' function. */ +#define HAVE_INITGROUPS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `atomic_ops' library (-latomic_ops). */ +/* #undef HAVE_LIBATOMIC_OPS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBIO_H */ + +/* Define to 1 if you have the `m' library (-lm). */ +#define HAVE_LIBM 1 + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +/* #undef HAVE_LIBPTHREAD */ + +/* Define to 1 if you have the `sfio' library (-lsfio). */ +/* #undef HAVE_LIBSFIO */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the `llrint' function. */ +#define HAVE_LLRINT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LOCALE_H 1 + +/* Define to 1 if you have the `localtime_r' function. */ +#define HAVE_LOCALTIME_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MATH_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mkstemp' function. */ +#define HAVE_MKSTEMP 1 + +/* Define to 1 if you have a working `mmap' system call. */ +#define HAVE_MMAP 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MNTENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MNTTAB_H */ + +/* Define this if multi-threading should be supported */ +#define HAVE_MULTI_THREAD 1 + +/* Define to 1 if you have the `nanosleep' function. */ +#define HAVE_NANOSLEEP 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NETCONFIG_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_NETINET_IN_H 1 + +/* Define to 1 if you have the `poll' function. */ +#define HAVE_POLL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define this if posix_fadvise() is present on the platform */ +/* #undef HAVE_POSIX_FADVISE */ + +/* Define to 1 if you have the `pread' function. */ +#define HAVE_PREAD 1 + +/* Define if you have POSIX threads libraries and header files. */ +/* #undef HAVE_PTHREAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PTHREAD_H 1 + +/* Define to 1 if you have the `pthread_keycreate' function. */ +/* #undef HAVE_PTHREAD_KEYCREATE */ + +/* Define to 1 if you have the `pthread_key_create' function. */ +#define HAVE_PTHREAD_KEY_CREATE 1 + +/* Define to 1 if you have the `pthread_mutexattr_setprotocol' function. */ +/* undef HAVE_PTHREAD_MUTEXATTR_SETPROTOCOL */ + +/* Define to 1 if you have the `pthread_mutexattr_setrobust_np' function. */ +/* #undef HAVE_PTHREAD_MUTEXATTR_SETROBUST_NP */ + +/* Define to 1 if you have the `pthread_mutex_consistent_np' function. */ +/* #undef HAVE_PTHREAD_MUTEX_CONSISTENT_NP */ + +/* Define to 1 if you have the `pthread_rwlockattr_setkind_np' function. */ +/* #undef HAVE_PTHREAD_RWLOCKATTR_SETKIND_NP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PWD_H 1 + +/* Define to 1 if you have the `pwrite' function. */ +#define HAVE_PWRITE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_RPC_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_XDR_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SEMAPHORE_H 1 + +/* Define to 1 if you have the `semtimedop' function. */ +#define HAVE_SEMTIMEDOP 1 + +/* Define to 1 if the system has the type `semun'. */ +/* #undef HAVE_SEMUN */ + +/* Define to 1 if you have the `sem_init' function. */ +#define HAVE_SEM_INIT 1 + +/* Define to 1 if you have the `sem_timedwait' function. */ +#define HAVE_SEM_TIMEDWAIT 1 + +/* Define to 1 if you have the `setitimer' function. */ +#define HAVE_SETITIMER 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SETJMP_H 1 + +/* Define to 1 if you have the `setmntent' function. */ +#define HAVE_SETMNTENT 1 + +/* Define to 1 if you have the `setpgid' function. */ +#define HAVE_SETPGID 1 + +/* Define to 1 if you have the `setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the `sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SIGNAL_H 1 + +/* Define to 1 if you have the `sigset' function. */ +/* #undef HAVE_SIGSET */ + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SOCKET_H */ + +/* Define to 1 if the system has the type `socklen_t'. */ +#define HAVE_SOCKLEN_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDARG_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror_r' function. */ +#define HAVE_STRERROR_R 1 + +/* Define to 1 if you have the `stricmp' function. */ +/* #undef HAVE_STRICMP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncasecmp' function. */ +#define HAVE_STRNCASECMP 1 + +/* Define to 1 if you have the `strnicmp' function. */ +/* #undef HAVE_STRNICMP */ + +/* Define this if struct dirent has d_type */ +#define HAVE_STRUCT_DIRENT_D_TYPE 1 + +/* Define to 1 if the system has the type `struct xdr_ops'. */ +#define HAVE_STRUCT_XDR_OPS 1 + +/* Define to 1 if the system has the type `struct XDR::xdr_ops'. */ +/* #undef HAVE_STRUCT_XDR__XDR_OPS */ + +/* Define to 1 if you have the `swab' function. */ +#define HAVE_SWAB 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_FILE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IOCTL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_IPC_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_MNTTAB_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MOUNT_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_RESOURCE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SEM_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGINFO_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SIGNAL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKIO_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +/* Deprecated in android-24 */ +#undef HAVE_SYS_TIMEB_H + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the `tcgetattr' function. */ +#define HAVE_TCGETATTR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIOS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TERMIO_H 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the `times' function. */ +#define HAVE_TIMES 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UTIME_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VARARGS_H */ + +/* Define this if va_copy() is defined in stdarg.h */ +#define HAVE_VA_COPY 1 + +/* Define to 1 if you have the `vfork' function. */ +#define HAVE_VFORK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VFORK_H */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINSOCK2_H */ + +/* Define to 1 if `fork' works. */ +#define HAVE_WORKING_FORK 1 + +/* Define to 1 if `vfork' works. */ +#define HAVE_WORKING_VFORK 1 + +/* Define to 1 if you have the file `AC_File'. */ +#define HAVE__PROC_SELF_EXE 1 + +/* Define to 1 if you have the `_swab' function. */ +/* #undef HAVE__SWAB */ + +/* Define it if compiler supports ISO syntax for thread-local storage */ +#define HAVE___THREAD 1 + +/* Define this if CPU is HPPA */ +/* #undef HPPA */ + +/* Define this if OS is HP-UX */ +/* #undef HPUX */ + +/* Define this if OS is Linux */ +#define LINUX 1 + +/* Define this if OS is NetBSD */ +/* #undef NETBSD */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* Define to the necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* Define as the return type of signal handlers (`int' or `void'). */ +#define RETSIGTYPE void + +/* Define to 1 if the `setpgrp' function takes no argument. */ +#define SETPGRP_VOID 1 + +/* Architecture is big-edian sh4 */ +/* #undef SHEB */ + +/* Extension for shared libraries */ +#define SHRLIB_EXT "so" + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* The size of `void *', as computed by sizeof. */ +#define SIZEOF_VOID_P 4 + + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define this if databases on raw devices should be supported */ +#define SUPPORT_RAW_DEVICES 1 + +/* Define to 1 if you can safely include both and . */ +#define TIME_WITH_SYS_TIME 1 + +/* Define this if OS is Windows NT */ +/* #undef WIN_NT */ + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define this if sem_init() works on the platform */ +#define WORKING_SEM_INIT 1 + +/* Number of bits in a file offset, on hosts where this is settable. */ +#define _FILE_OFFSET_BITS 64 + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to `int' if doesn't define. */ +/* #undef gid_t */ + +/* Define to `long int' if does not define. */ +/* #undef off_t */ + +/* Define to `int' if does not define. */ +/* #undef pid_t */ + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define to `int' if doesn't define. */ +/* #undef uid_t */ + +/* Define as `fork' if `vfork' does not work. */ +/* #undef vfork */ + +/* Define to empty if the keyword `volatile' does not work. Warning: valid + code using `volatile' can become incorrect without. Disable with care. */ +/* #undef volatile */ + +#ifdef GETTIMEOFDAY_RETURNS_TIMEZONE +#define GETTIMEOFDAY(x) gettimeofday((x), (struct timezone *)0) +#else +#define GETTIMEOFDAY(x) gettimeofday((x)) +#endif + +#ifndef HAVE_SOCKLEN_T +typedef int socklen_t; +#endif From 58bdd12ca1bf347ee95c938922b160d3facf83dc Mon Sep 17 00:00:00 2001 From: Popa Adrian Marius Date: Tue, 25 Oct 2016 18:35:41 +0300 Subject: [PATCH 6/6] Add CXXFLAGS -std=c++11 to android builds also --- builds/posix/make.android.arm64 | 2 ++ builds/posix/make.android.arme | 2 ++ builds/posix/make.android.x86 | 2 ++ builds/posix/make.android.x86_64 | 2 ++ 4 files changed, 8 insertions(+) diff --git a/builds/posix/make.android.arm64 b/builds/posix/make.android.arm64 index c5c67a813e0..80da6a931ab 100644 --- a/builds/posix/make.android.arm64 +++ b/builds/posix/make.android.arm64 @@ -41,6 +41,8 @@ COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -DARM64 -pipe OPTIMIZE_FLAGS=-fno-omit-frame-pointer WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable +CXXFLAGS := $(CXXFLAGS) -std=c++11 + PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) diff --git a/builds/posix/make.android.arme b/builds/posix/make.android.arme index c1c5e1de9c5..ec10b1f46a3 100644 --- a/builds/posix/make.android.arme +++ b/builds/posix/make.android.arme @@ -41,6 +41,8 @@ COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -DARM -pipe -M OPTIMIZE_FLAGS=-fno-omit-frame-pointer WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable +CXXFLAGS := $(CXXFLAGS) -std=c++11 + PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) diff --git a/builds/posix/make.android.x86 b/builds/posix/make.android.x86 index a4acc47599d..3eb2419c88c 100644 --- a/builds/posix/make.android.x86 +++ b/builds/posix/make.android.x86 @@ -49,6 +49,8 @@ COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -pipe -MMD -fP OPTIMIZE_FLAGS=-fno-omit-frame-pointer WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable +CXXFLAGS := $(CXXFLAGS) -std=c++11 + PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS) diff --git a/builds/posix/make.android.x86_64 b/builds/posix/make.android.x86_64 index 0cb1958223e..706dd231f58 100644 --- a/builds/posix/make.android.x86_64 +++ b/builds/posix/make.android.x86_64 @@ -41,6 +41,8 @@ COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DANDROID -DAMD64 -pipe OPTIMIZE_FLAGS=-fno-omit-frame-pointer WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable +CXXFLAGS := $(CXXFLAGS) -std=c++11 + PROD_FLAGS=$(COMMON_FLAGS) $(OPTIMIZE_FLAGS) DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS)