summaryrefslogtreecommitdiff
path: root/libcdr
diff options
context:
space:
mode:
authorFridrich Štrba <fridrich.strba@bluewin.ch>2013-01-25 16:17:29 +0100
committerPetr Mladek <pmladek@suse.cz>2013-01-25 17:04:59 +0100
commit36e31ab6551579bf69012d0ba803fcb5fb17a062 (patch)
treea542a94ffabb1b936ef93471cfa88ee965e22948 /libcdr
parent666210dec152f8aa781b22495cf55e9a89d90d67 (diff)
CDR: fix large-angle computation
Change-Id: Ia3f937b0b49093fbdbbe259b835a2d8a81633fe1 Blind "fix" for when using system ICU No point in pointing to nonexistent ICU headers in solver if building against a system ICU. Change-Id: I5a151f3bfefd1913ad84a33d74af749558926312 CDR: Override pkg-config with SYSTEM_ICU Change-Id: I665412f7d79247f6558337ac80bd866d2cfc3dce CDR: We want ICU_LIBS always empty since this is a static library Change-Id: I90730e08b07182fa73a1e3a60bed6da11cfd9e06 CDR: Actually apply the patch Change-Id: I9ffd7123b8f79128c559f30eade6ae49bf809981 Signed-off-by: Petr Mladek <pmladek@suse.cz>
Diffstat (limited to 'libcdr')
-rw-r--r--libcdr/ExternalProject_libcdr.mk3
-rw-r--r--libcdr/UnpackedTarball_cdr.mk6
-rw-r--r--libcdr/libcdr-0.0.10-ellipse.patch19
3 files changed, 27 insertions, 1 deletions
diff --git a/libcdr/ExternalProject_libcdr.mk b/libcdr/ExternalProject_libcdr.mk
index 1bf7d23923a5..9193c3c32a86 100644
--- a/libcdr/ExternalProject_libcdr.mk
+++ b/libcdr/ExternalProject_libcdr.mk
@@ -61,7 +61,8 @@ $(call gb_ExternalProject_get_state_target,libcdr,build) :
cd $(EXTERNAL_WORKDIR) \
&& export PKG_CONFIG="" \
&& export ICU_LIBS=" " \
- && export ICU_CFLAGS="-I$(OUTDIR)/inc/external" \
+ $(if $(filter NO,$(SYSTEM_ICU)),&& export ICU_CFLAGS="-I$(OUTDIR)/inc/external") \
+ $(if $(filter YES,$(SYSTEM_ICU)),&& ICU_CFLAGS=" ") \
&& ./configure \
--with-pic \
--enable-static \
diff --git a/libcdr/UnpackedTarball_cdr.mk b/libcdr/UnpackedTarball_cdr.mk
index be1e7d762a87..541fa960e73b 100644
--- a/libcdr/UnpackedTarball_cdr.mk
+++ b/libcdr/UnpackedTarball_cdr.mk
@@ -11,4 +11,10 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,cdr))
$(eval $(call gb_UnpackedTarball_set_tarball,cdr,$(CDR_TARBALL)))
+$(eval $(call gb_UnpackedTarball_set_patchlevel,cdr,1))
+
+$(eval $(call gb_UnpackedTarball_add_patches,cdr,\
+ libcdr/libcdr-0.0.10-ellipse.patch \
+))
+
# vim: set noet sw=4 ts=4:
diff --git a/libcdr/libcdr-0.0.10-ellipse.patch b/libcdr/libcdr-0.0.10-ellipse.patch
new file mode 100644
index 000000000000..0b392a702b35
--- /dev/null
+++ b/libcdr/libcdr-0.0.10-ellipse.patch
@@ -0,0 +1,19 @@
+--- a/src/lib/CDRParser.cpp
++++ b/src/lib/CDRParser.cpp
+@@ -1186,6 +1186,16 @@ void libcdr::CDRParser::readEllipse(WPXInputStream *input)
+ double rx = fabs(cx);
+ double ry = fabs(cy);
+
++ while (angle1 < 0.0)
++ angle1 += 2*M_PI;
++ while (angle1 > 2*M_PI)
++ angle1 -= 2*M_PI;
++
++ while (angle2 < 0.0)
++ angle2 += 2*M_PI;
++ while (angle2 > 2*M_PI)
++ angle2 -= 2*M_PI;
++
+ if (angle1 != angle2)
+ {
+ if (angle2 < angle1)