[Libreoffice-commits] .: 3 commits - configure.in solenv/gbuild solenv/inc
Tor Lillqvist
tml at kemper.freedesktop.org
Mon Aug 1 08:20:29 PDT 2011
configure.in | 4 -
solenv/gbuild/platform/ios.mk | 9 +--
solenv/inc/unxiosr.mk | 116 +++++++++++++++++++++++++++++++-----------
solenv/inc/unxmacx.mk | 28 ++--------
4 files changed, 103 insertions(+), 54 deletions(-)
New commits:
commit 62deeab1ee2d75e2973dfd9428790f281fd76f2c
Author: Tor Lillqvist <tml at iki.fi>
Date: Mon Aug 1 14:34:16 2011 +0300
iOS configuration improvements
Make the unxiosr.mk file more like the macosx.mk one.
diff --git a/solenv/gbuild/platform/ios.mk b/solenv/gbuild/platform/ios.mk
index 86cff72..6725886 100644
--- a/solenv/gbuild/platform/ios.mk
+++ b/solenv/gbuild/platform/ios.mk
@@ -88,11 +88,12 @@ gb_CXXFLAGS := \
#-fsigned-char \ might be removed?
#-malign-natural \ might be removed?
-# these are to get g++ to switch to Objective-C++ mode
-# (see toolkit module for a case where it is necessary to do it this way)
-gb_OBJCXXFLAGS := -x objective-c++ -fobjc-exceptions -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40300
+# these are to get gcc to switch to Objective-C++ or Objective-C mode
+gb_OBJC_OBJCXX_COMMON_FLAGS := -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40300
-gb_OBJCFLAGS := -x objective-c -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40300
+gb_OBJCXXFLAGS := -x objective-c++ $(gb_OBJC_OBJCXX_COMMON_FLAGS)
+
+gb_OBJCFLAGS := -x objective-c $(gb_OBJC_OBJCXX_COMMON_FLAGS)
ifneq ($(EXTERNAL_WARNINGS_NOT_ERRORS),TRUE)
gb_CFLAGS_WERROR := -Werror
diff --git a/solenv/inc/unxiosr.mk b/solenv/inc/unxiosr.mk
index dad1177..5532560 100644
--- a/solenv/inc/unxiosr.mk
+++ b/solenv/inc/unxiosr.mk
@@ -25,28 +25,55 @@
#
#*************************************************************************
-# --- Unix Environment for iOS cross-compilation -------------
+##########################################################################
+# Platform MAKEFILE for iOS, both devices and the simulator
+##########################################################################
-CFLAGS=-c $(EXTRA_CFLAGS)
+PROCESSOR_DEFINES=-DARM32
-LINKC*=$(CC)
-LINK*=$(CXX)
+# flags to enable build with symbols
+CFLAGSENABLESYMBOLS=-g
-STDLIBCUIMT=-framework UIKit -framework Foundation -framework CoreText -framework CoreGraphics -framework CoreFoundation -Xlinker -objc_abi_version -Xlinker 2
-STDLIBGUIMT=$(STDLIBCUIMT)
-STDSHLCUIMT=
-STDSHLGUIMT=
+ASM=
+AFLAGS=
+LINKOUTPUT_FILTER=
-LIBMGR*=ar
-LIBFLAGS=-r
+CFLAGS=-fmessage-length=0 -c $(EXTRA_CFLAGS)
-PROCESSOR_DEFINES=-DARM32
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
-DLLPRE=lib
-DLLPOST=.a
+# ---------------------------------
+# Compilation flags
+# ---------------------------------
+# Normal C compilation flags
+CFLAGSCC=-pipe -fsigned-char $(ARCH_FLAGS)
-# flags to enable build with symbols
-CFLAGSENABLESYMBOLS=-g
+# Normal Objective C compilation flags
+OBJCFLAGS=-fexceptions -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40300
+# -x options generally ignored by ccache, tell it that it can cache
+# the result nevertheless
+CCACHE_SKIP:=$(eq,$(USE_CCACHE),YES --ccache-skip $(NULL))
+OBJCXXFLAGS:=$(CCACHE_SKIP) -x $(CCACHE_SKIP) objective-c++ $(OBJCFLAGS)
+
+# Comp Flags for files that need exceptions enabled (C and C++)
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+
+# Comp Flags for files that do not need exceptions enabled (C and C++)
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+# Normal C++ compilation flags
+CFLAGSCXX=-pipe -fsigned-char $(ARCH_FLAGS) -Wno-ctor-dtor-privacy
+
+# No PIC needed as we don't build dynamic objects
+PICSWITCH:=
+# Other flags
+CFLAGSOBJGUIMT=$(PICSWITCH) -fno-common
+CFLAGSOBJCUIMT=$(PICSWITCH) -fno-common
+CFLAGSSLOGUIMT=$(PICSWITCH) -fno-common
+CFLAGSSLOCUIMT=$(PICSWITCH) -fno-common
# Flag for including debugging information in object files
CFLAGSDEBUG=-g
@@ -55,22 +82,55 @@ CFLAGSDBGUTIL=
# Flag to specify output file to compiler/linker
CFLAGSOUTOBJ=-o
-# # Include generic Mac OS X makefile
-# .INCLUDE : unxmacx.mk
+# ---------------------------------
+# Optimization flags
+# ---------------------------------
+CFLAGSOPT=-O2 -fno-strict-aliasing
+CFLAGSNOOPT=-O0
+
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+# -Wshadow does not work for C++ as /usr/include/c++/4.0.0/ext/hashtable.h
+# l. 717 contains a declaration of __cur2 shadowing the declaration at l. 705,
+# in template code for which a #pragma gcc system_header would not work:
+# -Wextra doesn not work for gcc-3.3
+CFLAGSWARNCC=-Wall -Wendif-labels
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-Werror
+
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+LINKFLAGSDEFS*=-Wl,-multiply_defined,suppress
+
+# Tag to identify an output file as a library
+DLLPRE=lib
+# We don't use dynamic shared libraries on iOS
+DLLPOST=.a
+# Precompiled header file extension
+PCHPOST=.gch
+
+STDOBJVCL=$(L)/salmain.o
+
+STDLIBCUIMT=-framework UIKit -framework Foundation -framework CoreText -framework CoreGraphics -framework CoreFoundation -Xlinker -objc_abi_version -Xlinker 2
+STDLIBGUIMT=$(STDLIBCUIMT)
+STDSHLCUIMT=
+STDSHLGUIMT=
-# --- general *ix settings ---
-HC=hc
-HCFLAGS=
-PATH_SEPERATOR*=:
-CDEFS+=-D__DMAKE
+LIBMGR=ar
+LIBFLAGS=-r
-CDEFS+=-DUNIX
+IMPLIB=:
+IMPLIBFLAGS=
-YACC*=yacc
-YACCFLAGS*=-d -t
+MAPSYM=:
+MAPSYMFLAGS=
-EXECPOST=
-SCPPOST=.ins
-DLLDEST=$(LB)
+RC=:
+RCFLAGS=
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
OOO_LIBRARY_PATH_VAR = DYLD_LIBRARY_PATH
commit a6092ef07e48a80b1ff41cb70da5bbbc2ece7108
Author: Tor Lillqvist <tml at iki.fi>
Date: Mon Aug 1 14:30:32 2011 +0300
We need --ccache-skip when using ccache for iOS, too
diff --git a/configure.in b/configure.in
index be941c8..66cac9f 100755
--- a/configure.in
+++ b/configure.in
@@ -3279,8 +3279,8 @@ AC_SUBST(HAVE_GCC_NO_LONG_DOUBLE)
dnl need to check for ccache version: otherwise prevents
dnl caching of the results (like "-x objective-c++" for Mac)
AC_MSG_CHECKING([whether we are able to use --ccache-skip])
-if test "$_os" != "Darwin" ; then
- AC_MSG_RESULT([only used on Mac currently, skipping])
+if test $_os != Darwin -a $_os != iOS; then
+ AC_MSG_RESULT([only needed on Mac and iOS currently, skipping])
else
# checking for ccache presence/version
AC_MSG_RESULT([probing...])
commit 6251173cc9fc556815abff12c9322bf2bacc5f43
Author: Tor Lillqvist <tml at iki.fi>
Date: Mon Aug 1 12:40:33 2011 +0300
We have only supported non-X11 ("aqua") on MacOSX for quite some time
diff --git a/solenv/inc/unxmacx.mk b/solenv/inc/unxmacx.mk
index b60e402..cbd30ca 100644
--- a/solenv/inc/unxmacx.mk
+++ b/solenv/inc/unxmacx.mk
@@ -39,7 +39,6 @@ LINKOUTPUT_FILTER=
# -D_PTHREADS and -D_REENTRANT are needed for STLport, and must be specified when
# compiling STLport sources too, either internally or externally.
CDEFS+=-DGLIBC=2 -D_PTHREADS -D_REENTRANT -DNO_PTHREAD_PRIORITY $(PROCESSOR_DEFINES) -D_USE_NAMESPACE=1
-.IF "$(GUIBASE)"=="aqua"
# MAXOSX_DEPLOYMENT_TARGET : The minimum version required to run the build,
# build can assume functions/libraries of that version to be available
# unless you want to do runtime checks for 10.5 api, you also want to use the 10.4 sdk
@@ -51,7 +50,6 @@ CDEFS+=-DGLIBC=2 -D_PTHREADS -D_REENTRANT -DNO_PTHREAD_PRIORITY $(PROCESSOR_DEFI
CDEFS+:=-DQUARTZ
EXTRA_CDEFS+:=-isysroot $(MACOSX_SDK_PATH) -DMAC_OS_X_VERSION_MIN_REQUIRED=$(MAC_OS_X_VERSION_MIN_REQUIRED) -DMAC_OS_X_VERSION_MAX_ALLOWED=$(MAC_OS_X_VERSION_MAX_ALLOWED)
-.ENDIF
# Name of library where static data members are initialized
# STATICLIBNAME=static$(DLLPOSTFIX)
@@ -190,13 +188,10 @@ LINKFLAGSRUNPATH_BOXT=
LINKFLAGSRUNPATH_NONE=-install_name '@__________________________________________________NONE/$(@:f)'
LINKFLAGS=$(LINKFLAGSDEFS)
-# [ed] 5/14/02 If we're building for aqua, add in the objc runtime library into our link line
-.IF "$(GUIBASE)" == "aqua"
- LINKFLAGS+=-lobjc
- # Sometimes we still use files that would be in a GUIBASE="unx" specific directory
- # because they really aren't GUIBASE specific, so we've got to account for that here.
- INCGUI+= -I$(PRJ)/unx/inc
-.ENDIF
+LINKFLAGS+=-lobjc
+# Sometimes we still use files that would be in a GUIBASE="unx" specific directory
+# because they really aren't GUIBASE specific, so we've got to account for that here.
+INCGUI+= -I$(PRJ)/unx/inc
#special settings form environment
LINKFLAGS+=$(EXTRA_LINKFLAGS)
@@ -239,17 +234,10 @@ STDSLOGUI=
STDOBJCUI=
STDSLOCUI=
-.IF "$(GUIBASE)" == "aqua"
- STDLIBCUIMT=CPPRUNTIME -lm
- STDLIBGUIMT=-framework Carbon -framework Cocoa -lpthread CPPRUNTIME -lm
- STDSHLCUIMT=-lpthread CPPRUNTIME -lm
- STDSHLGUIMT=-framework Carbon -framework CoreFoundation -framework Cocoa -lpthread CPPRUNTIME -lm
-.ELSE
- STDLIBCUIMT= CPPRUNTIME -lm
- STDLIBGUIMT=-lX11 -lpthread CPPRUNTIME -lm
- STDSHLCUIMT=-lpthread CPPRUNTIME -lm
- STDSHLGUIMT=-lX11 -lXext -lpthread CPPRUNTIME -lm -framework CoreFoundation
-.ENDIF
+STDLIBCUIMT=CPPRUNTIME -lm
+STDLIBGUIMT=-framework Carbon -framework Cocoa -lpthread CPPRUNTIME -lm
+STDSHLCUIMT=-lpthread CPPRUNTIME -lm
+STDSHLGUIMT=-framework Carbon -framework CoreFoundation -framework Cocoa -lpthread CPPRUNTIME -lm
LIBMGR=ar
LIBFLAGS=-r
More information about the Libreoffice-commits
mailing list