summaryrefslogtreecommitdiff
path: root/liblangtag
diff options
context:
space:
mode:
authorPeter Foley <pefoley2@verizon.net>2013-03-02 15:28:26 -0500
committerAndras Timar <atimar@suse.com>2013-03-04 12:52:00 +0000
commit6398cf9f874cf0879151d70e9f63f7b8d53b30e0 (patch)
treeaeaccb3826d0bb2fd99dd5ec0886b0179d354329 /liblangtag
parent52db503897de94deae3121e1ce194c88b517f300 (diff)
do not require cygwin gcc
Change-Id: I29de91f2eeb5c9317271aecf861f64a3c8eff73f Reviewed-on: https://gerrit.libreoffice.org/2521 Reviewed-by: Michael Meeks <michael.meeks@suse.com> Reviewed-by: Andras Timar <atimar@suse.com> Tested-by: Andras Timar <atimar@suse.com>
Diffstat (limited to 'liblangtag')
-rw-r--r--liblangtag/ExternalPackage_langtag.mk6
-rw-r--r--liblangtag/ExternalProject_langtag.mk8
-rw-r--r--liblangtag/Module_liblangtag.mk14
-rw-r--r--liblangtag/README5
-rwxr-xr-xliblangtag/StaticLibrary_langtag.mk73
5 files changed, 88 insertions, 18 deletions
diff --git a/liblangtag/ExternalPackage_langtag.mk b/liblangtag/ExternalPackage_langtag.mk
index 3770a3e7675d..a424f83b2711 100644
--- a/liblangtag/ExternalPackage_langtag.mk
+++ b/liblangtag/ExternalPackage_langtag.mk
@@ -8,11 +8,9 @@
#
$(eval $(call gb_ExternalPackage_ExternalPackage,langtag,langtag))
+
$(eval $(call gb_ExternalPackage_use_external_project,langtag,langtag))
-ifeq ($(OS)$(COM),WNTMSC)
-$(eval $(call gb_ExternalPackage_add_file,langtag,lib/langtag.lib,liblangtag/.libs/langtag.lib))
-else
+
$(eval $(call gb_ExternalPackage_add_file,langtag,lib/liblangtag.a,liblangtag/.libs/liblangtag.a))
-endif
# vim: set noet sw=4 ts=4:
diff --git a/liblangtag/ExternalProject_langtag.mk b/liblangtag/ExternalProject_langtag.mk
index 24d4a8c356db..051e0357aaf8 100644
--- a/liblangtag/ExternalProject_langtag.mk
+++ b/liblangtag/ExternalProject_langtag.mk
@@ -18,16 +18,10 @@ $(eval $(call gb_ExternalProject_register_targets,langtag,\
$(call gb_ExternalProject_get_state_target,langtag,build):
$(call gb_ExternalProject_run,build,\
- $(if $(filter MSC,$(COM)), \
- export LIB="$(ILIB)" \
- CC="$(CC) -MD -nologo \
- $(if $(filter TRUE,$(ENABLE_DEBUG)),-Zi) \
- $(SOLARINC)" && ) \
./configure --disable-modules --disable-test --disable-introspection --disable-shared --enable-static --with-pic \
$(if $(filter TRUE,$(HAVE_GCC_BUILTIN_ATOMIC)),"lt_cv_has_atomic=yes","lt_cv_has_atomic=no") \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
- $(if $(filter NO,$(SYSTEM_LIBXML)),LIBXML2_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,xml2)/include" \
- $(if $(filter MSC,$(COM)),LIBXML2_LIBS="$(OUTDIR)/lib/libxml2.lib",LIBXML2_LIBS="-L$(OUTDIR)/lib -lxml2"),\
+ $(if $(filter NO,$(SYSTEM_LIBXML)),LIBXML2_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,xml2)/include",\
$(if $(filter MACOSX,$(OS)),LIBXML2_CFLAGS="$(LIBXML_CFLAGS)" LIBXML2_LIBS="$(LIBXML_LIBS)")) \
$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
$(if $(filter-out LINUX FREEBSD,$(OS)),,LDFLAGS="-Wl$(COMMA)-z$(COMMA)origin -Wl$(COMMA)-rpath,\\"\$$\$$ORIGIN:'\'\$$\$$ORIGIN/../ure-link/lib) \
diff --git a/liblangtag/Module_liblangtag.mk b/liblangtag/Module_liblangtag.mk
index 98c1c3b56279..8d75f2da5b0a 100644
--- a/liblangtag/Module_liblangtag.mk
+++ b/liblangtag/Module_liblangtag.mk
@@ -11,13 +11,23 @@ $(eval $(call gb_Module_Module,liblangtag))
ifeq ($(ENABLE_LIBLANGTAG),YES)
ifeq ($(SYSTEM_LIBLANGTAG),NO)
+
$(eval $(call gb_Module_add_targets,liblangtag,\
UnpackedTarball_langtag \
- ExternalPackage_langtag \
ExternalPackage_langtag_data \
- ExternalProject_langtag \
Zip_liblangtag_data \
))
+
+ifeq ($(COM),MSC)
+$(eval $(call gb_Module_add_targets,liblangtag,\
+ StaticLibrary_langtag \
+))
+else
+$(eval $(call gb_Module_add_targets,liblangtag,\
+ ExternalPackage_langtag \
+ ExternalProject_langtag \
+))
+endif
endif
endif
diff --git a/liblangtag/README b/liblangtag/README
index 78946d5618aa..694daee093e6 100644
--- a/liblangtag/README
+++ b/liblangtag/README
@@ -1,6 +1 @@
From [http://tagoh.bitbucket.org/liblangtag/]. An interface for BCP47 language tags.
-
-Note that (as far a I recall) liblangtag is the only "bundled"
-(3rd-party) library we have that we configure and build also for MSVC
-using an autotools+libtool based mechanism. That is rather fragile and
-works maybe mostly by accident. So be careful not to break it.
diff --git a/liblangtag/StaticLibrary_langtag.mk b/liblangtag/StaticLibrary_langtag.mk
new file mode 100755
index 000000000000..fed7565c3796
--- /dev/null
+++ b/liblangtag/StaticLibrary_langtag.mk
@@ -0,0 +1,73 @@
+# -*- 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_StaticLibrary_StaticLibrary,langtag))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,langtag))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,langtag,langtag))
+
+$(eval $(call gb_StaticLibrary_use_external,langtag,libxml2))
+
+$(eval $(call gb_StaticLibrary_set_include,langtag,\
+ $$(INCLUDE) \
+ -I$(call gb_UnpackedTarball_get_dir,langtag) \
+ -I$(call gb_UnpackedTarball_get_dir,langtag)/liblangtag \
+))
+
+# Hardcoded for MSVC
+$(eval $(call gb_StaticLibrary_add_defs,langtag,\
+ -D__LANGTAG_COMPILATION \
+ -DREGDATADIR \
+ -DLT_HAVE___INLINE \
+ -DLT_CAN_INLINE \
+ -DALIGNOF_VOID_P=4 \
+))
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,langtag,\
+ UnpackedTarball/langtag/liblangtag/lt-database \
+ UnpackedTarball/langtag/liblangtag/lt-error \
+ UnpackedTarball/langtag/liblangtag/lt-ext-module \
+ UnpackedTarball/langtag/liblangtag/lt-ext-module-data \
+ UnpackedTarball/langtag/liblangtag/lt-extension \
+ UnpackedTarball/langtag/liblangtag/lt-extlang \
+ UnpackedTarball/langtag/liblangtag/lt-extlang-db \
+ UnpackedTarball/langtag/liblangtag/lt-grandfathered \
+ UnpackedTarball/langtag/liblangtag/lt-grandfathered-db \
+ UnpackedTarball/langtag/liblangtag/lt-lang \
+ UnpackedTarball/langtag/liblangtag/lt-lang-db \
+ UnpackedTarball/langtag/liblangtag/lt-list \
+ UnpackedTarball/langtag/liblangtag/lt-mem \
+ UnpackedTarball/langtag/liblangtag/lt-messages \
+ UnpackedTarball/langtag/liblangtag/lt-redundant \
+ UnpackedTarball/langtag/liblangtag/lt-redundant-db \
+ UnpackedTarball/langtag/liblangtag/lt-region \
+ UnpackedTarball/langtag/liblangtag/lt-region-db \
+ UnpackedTarball/langtag/liblangtag/lt-script \
+ UnpackedTarball/langtag/liblangtag/lt-script-db \
+ UnpackedTarball/langtag/liblangtag/lt-string \
+ UnpackedTarball/langtag/liblangtag/lt-tag \
+ UnpackedTarball/langtag/liblangtag/lt-trie \
+ UnpackedTarball/langtag/liblangtag/lt-utils \
+ UnpackedTarball/langtag/liblangtag/lt-variant \
+ UnpackedTarball/langtag/liblangtag/lt-variant-db \
+ UnpackedTarball/langtag/liblangtag/lt-xml \
+))
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,langtag,\
+ UnpackedTarball/langtag/extensions/lt-ext-ldml-t \
+ , -DLT_MODULE_PREFIX=lt_module_ext_t \
+))
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,langtag,\
+ UnpackedTarball/langtag/extensions/lt-ext-ldml-u \
+ , -DLT_MODULE_PREFIX=lt_module_ext_u \
+))
+
+# vim: set noet sw=4 ts=4: