summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFridrich Štrba <fridrich.strba@bluewin.ch>2012-11-07 00:22:05 +0100
committerFridrich Štrba <fridrich.strba@bluewin.ch>2012-11-07 00:22:13 +0100
commitaacefd4711bd84e59e23b1a91d21ff18f64e951c (patch)
tree77c7a917d72b22a407081198ff3b60db081c7420
parent4c1c61ce5701a3d2d273892dc8412eee08d0dca4 (diff)
Fix windows linking of i18npool
Change-Id: I9e66d0528a8b095897e27216352979c4bcfb4eae
-rw-r--r--i18npool/Library_i18nisolang1.mk5
-rw-r--r--liblangtag/liblangtag-0.4.0-windows.patch6
2 files changed, 8 insertions, 3 deletions
diff --git a/i18npool/Library_i18nisolang1.mk b/i18npool/Library_i18nisolang1.mk
index 869c21aa637b..3864c6eac574 100644
--- a/i18npool/Library_i18nisolang1.mk
+++ b/i18npool/Library_i18nisolang1.mk
@@ -61,6 +61,11 @@ ifeq ($(ENABLE_LIBLANGTAG),YES)
$(eval $(call gb_Library_add_defs,i18nisolang1,-DENABLE_LIBLANGTAG))
$(eval $(call gb_Library_use_external,i18nisolang1,liblangtag))
$(eval $(call gb_Library_use_external,i18nisolang1,libxml2))
+$(eval $(call gb_Library_use_system_win32_libs,i18nisolang1,\
+ $(if $(filter $(COM),MSC), \
+ kernel32 \
+ ) \
+))
endif
# vim: set noet sw=4 ts=4:
diff --git a/liblangtag/liblangtag-0.4.0-windows.patch b/liblangtag/liblangtag-0.4.0-windows.patch
index 30b3a0c2e0aa..1f2e6d8d5c9f 100644
--- a/liblangtag/liblangtag-0.4.0-windows.patch
+++ b/liblangtag/liblangtag-0.4.0-windows.patch
@@ -120,7 +120,7 @@
+{
+ lt_return_val_if_fail (v != NULL, 0);
+
-+ return (int)InterlockedAdd((LONG*)v, 0);
++ return (int)InterlockedExchangeAdd((LONG*)v, 0);
+}
+
+LT_INLINE_FUNC int
@@ -128,7 +128,7 @@
+{
+ lt_return_val_if_fail (v != NULL, 0);
+
-+ return (int)InterlockedAdd((LONG*)v, 1);
++ return (int)InterlockedExchangeAdd((LONG*)v, 1) + 1;
+}
+
+lt_bool_t
@@ -136,7 +136,7 @@
+{
+ lt_return_val_if_fail (v != NULL, FALSE);
+
-+ return 1 == InterlockedAdd((LONG*)v, -1);
++ return 1 == InterlockedExchangeAdd((LONG*)v, -1) - 1;
+}
+
+