office-gobmx/liborcus/ExternalProject_liborcus.mk
Peter Foley d79bdca7e4 fix build on android with gcc 4.7
See https://code.google.com/p/android/issues/detail?id=41770

Change-Id: I555c1e9b8b15afd78b07b1c7b12a0b37d1112f9a
2013-03-02 13:01:04 -05:00

79 lines
3.1 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_ExternalProject_ExternalProject,liborcus))
$(eval $(call gb_ExternalProject_use_unpacked,liborcus,orcus))
$(eval $(call gb_ExternalProject_use_external,liborcus,boost_headers))
$(eval $(call gb_ExternalProject_register_targets,liborcus,\
build \
))
ifeq ($(OS)$(COM),WNTMSC)
ifeq ($(VCVER),90)
$(call gb_ExternalProject_get_state_target,liborcus,build) :
$(call gb_ExternalProject_run,build,\
export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& export BOOST_LIB_DIR=$(OUTDIR)/lib \
&& $(COMPATH)/vcpackages/vcbuild.exe liborcus-static-nozip.vcproj "Release|Win32" \
,vsprojects/liborcus-static-nozip)
else ifeq ($(VCVER),100)
$(call gb_ExternalProject_get_state_target,liborcus,build) :
$(call gb_ExternalProject_run,build,\
export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& export BOOST_LIB_DIR=$(OUTDIR)/lib \
&& MSBuild.exe liborcus-static-nozip.vcxproj /p:Configuration=Release /p:OutDir=Release/ /p:TargetName=orcus /p:WholeProgramOptimization=no \
,vsprojects/liborcus-static-nozip)
else
$(call gb_ExternalProject_get_state_target,liborcus,build) :
$(call gb_ExternalProject_run,build,\
export BOOST_INCLUDE_DIR=$(call gb_UnpackedTarball_get_dir,boost) \
&& export ZLIB_INCLUDE_DIR=$(OUTDIR)/inc/external/zlib \
&& export BOOST_LIB_DIR=$(OUTDIR)/lib \
&& MSBuild.exe liborcus-static-nozip.vcxproj /p:PlatformToolset=v110 /p:VisualStudioVersion=11.0 /p:Configuration=Release /p:OutDir=Release/ /p:TargetName=orcus /p:WholeProgramOptimization=no \
,vsprojects/liborcus-static-nozip)
endif
else
# Must be built with debug GNU C++ library if --enable-dbgutil has
# caused the LO code to be built thusly.
# The LIBS setting for Android is needed to get the orcus-xml-dump
# executable to build successfully. We obviously don't actually need
# that executable on Android, but we don't want to bother with
# patching out building it for Android.
$(call gb_ExternalProject_get_state_target,liborcus,build) :
$(call gb_ExternalProject_run,build,\
$(if $(filter ANDROID,$(OS)),LIBS='-lgnustl_shared -lm') \
./configure \
--with-pic \
--enable-static \
--disable-shared \
--without-libzip \
--disable-debug \
--disable-spreadsheet-model \
--disable-werror \
$(if $(filter LINUX FREEBSD OPENBSD NETBSD DRAGONFLY ANDROID,$(OS)),$(if $(gb_ENABLE_DBGUTIL),CPPFLAGS=-D_GLIBCXX_DEBUG)) \
CXXFLAGS="$(BOOST_CXXFLAGS) $(if $(filter NO,$(SYSTEM_BOOST)),\
-I$(call gb_UnpackedTarball_get_dir,boost),$(BOOST_CPPFLAGS))" \
$(if $(filter YES,$(SYSTEM_BOOST)),LDFLAGS=$(BOOST_LDFLAGS)) \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
&& $(MAKE) \
)
endif
# vim: set noet sw=4 ts=4: