Testing on 32bit
On version 1.4 a lot of the tests fail if compiled for 32bit.
The following tests FAILED:
2 - angle-test (Failed)
3 - bezier-test (Failed)
8 - ellipse-test (Failed)
9 - elliptical-arc-test (Failed)
12 - line-test (Failed)
19 - polynomial-test (Failed)
22 - self-intersections-test (Failed)
Full log
Running phase: checkPhase
Test project /build/source/build
Start 1: affine-test
Start 2: angle-test
Start 3: bezier-test
Start 4: choose-test
Start 5: circle-test
Start 6: convex-hull-test
Start 7: coord-test
Start 8: ellipse-test
1/25 Test #1: affine-test ...................... Passed 0.01 sec
2/25 Test #2: angle-test .......................***Failed 0.01 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 6 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 5 tests from AngleIntervalTest
[ RUN ] AngleIntervalTest.InnerAngleConstrutor
[ OK ] AngleIntervalTest.InnerAngleConstrutor (0 ms)
[ RUN ] AngleIntervalTest.Containment
/build/source/tests/angle-test.cpp:68: Failure
Expected equality of these values:
b.extent()
Which is: 3.1415926535897936
3.14159265358979323846
Which is: 3.1415926535897931
/build/source/tests/angle-test.cpp:72: Failure
Expected equality of these values:
c.extent()
Which is: 3.1415926535897936
3.14159265358979323846
Which is: 3.1415926535897931
[ FAILED ] AngleIntervalTest.Containment (0 ms)
[ RUN ] AngleIntervalTest.TimeAtAngle
[ OK ] AngleIntervalTest.TimeAtAngle (0 ms)
[ RUN ] AngleIntervalTest.AngleAt
/build/source/tests/angle-test.cpp:188: Failure
Expected equality of these values:
f2.angleAt(1)
Which is: -3.14159
3.14159265358979323846
Which is: 3.1415926535897931
[ FAILED ] AngleIntervalTest.AngleAt (0 ms)
[ RUN ] AngleIntervalTest.Extent
[ OK ] AngleIntervalTest.Extent (0 ms)
[----------] 5 tests from AngleIntervalTest (0 ms total)
[----------] 1 test from DegRadConversion
[ RUN ] DegRadConversion.PreservesPI180
[ OK ] DegRadConversion.PreservesPI180 (0 ms)
[----------] 1 test from DegRadConversion (0 ms total)
[----------] Global test environment tear-down
[==========] 6 tests from 2 test suites ran. (0 ms total)
[ PASSED ] 4 tests.
[ FAILED ] 2 tests, listed below:
[ FAILED ] AngleIntervalTest.Containment
[ FAILED ] AngleIntervalTest.AngleAt
2 FAILED TESTS
3/25 Test #4: choose-test ...................... Passed 0.01 sec
4/25 Test #5: circle-test ...................... Passed 0.01 sec
Start 9: elliptical-arc-test
Start 10: intersection-graph-test
Start 11: interval-test
Start 12: line-test
5/25 Test #6: convex-hull-test ................. Passed 0.01 sec
Start 13: min-bbox-test
6/25 Test #11: interval-test .................... Passed 0.00 sec
Start 14: nl-vector-test
7/25 Test #14: nl-vector-test ................... Passed 0.00 sec
Start 15: parallelogram-test
8/25 Test #13: min-bbox-test .................... Passed 0.01 sec
Start 16: path-test
9/25 Test #15: parallelogram-test ............... Passed 0.01 sec
Start 17: planar-graph-test
10/25 Test #17: planar-graph-test ................ Passed 0.01 sec
Start 18: point-test
11/25 Test #18: point-test ....................... Passed 0.01 sec
Start 19: polynomial-test
12/25 Test #10: intersection-graph-test .......... Passed 0.05 sec
Start 20: rect-test
13/25 Test #16: path-test ........................ Passed 0.04 sec
Start 21: sbasis-test
14/25 Test #20: rect-test ........................ Passed 0.01 sec
Start 22: self-intersections-test
15/25 Test #22: self-intersections-test ..........***Failed 0.01 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 8 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 8 tests from PVSelfIntersections
[ RUN ] PVSelfIntersections.NoSpurious
[ OK ] PVSelfIntersections.NoSpurious (2 ms)
[ RUN ] PVSelfIntersections.Bowties
[ OK ] PVSelfIntersections.Bowties (0 ms)
[ RUN ] PVSelfIntersections.OpenClosed
[ OK ] PVSelfIntersections.OpenClosed (0 ms)
[ RUN ] PVSelfIntersections.Tangential
/build/source/tests/self-intersections-test.cpp:150: Failure
Expected equality of these values:
circle_x_rect.size()
Which is: 1
2u
Which is: 2
[ FAILED ] PVSelfIntersections.Tangential (0 ms)
[ RUN ] PVSelfIntersections.Regression33
[ OK ] PVSelfIntersections.Regression33 (0 ms)
[ RUN ] PVSelfIntersections.NumericalInstability
[ OK ] PVSelfIntersections.NumericalInstability (0 ms)
[ RUN ] PVSelfIntersections.NumericallyChallenging
[ OK ] PVSelfIntersections.NumericallyChallenging (0 ms)
[ RUN ] PVSelfIntersections.BigonFiltering
[ OK ] PVSelfIntersections.BigonFiltering (0 ms)
[----------] 8 tests from PVSelfIntersections (4 ms total)
[----------] Global test environment tear-down
[==========] 8 tests from 1 test suite ran. (4 ms total)
[ PASSED ] 7 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] PVSelfIntersections.Tangential
1 FAILED TEST
Start 23: sbasis-text-test
16/25 Test #3: bezier-test ......................***Failed 0.08 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 23 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 23 tests from BezierTest
[ RUN ] BezierTest.Basics
[ OK ] BezierTest.Basics (0 ms)
[ RUN ] BezierTest.ValueAt
[ OK ] BezierTest.ValueAt (0 ms)
[ RUN ] BezierTest.Casteljau
[ OK ] BezierTest.Casteljau (3 ms)
[ RUN ] BezierTest.Portion
[ OK ] BezierTest.Portion (6 ms)
[ RUN ] BezierTest.Subdivide
[ OK ] BezierTest.Subdivide (17 ms)
[ RUN ] BezierTest.Mutation
[ OK ] BezierTest.Mutation (0 ms)
[ RUN ] BezierTest.MultiDerivative
[ OK ] BezierTest.MultiDerivative (0 ms)
[ RUN ] BezierTest.DegreeElevation
[ OK ] BezierTest.DegreeElevation (0 ms)
[ RUN ] BezierTest.Deflate
[ OK ] BezierTest.Deflate (0 ms)
[ RUN ] BezierTest.Roots
[ OK ] BezierTest.Roots (0 ms)
[ RUN ] BezierTest.BoundsExact
[ OK ] BezierTest.BoundsExact (0 ms)
[ RUN ] BezierTest.Operators
[ OK ] BezierTest.Operators (0 ms)
[ RUN ] BezierTest.Intersection
===============================
=== Intersection Testcase 1 ===
0.0983416 = (-3.121066785982245, 0.7636098258800632) 0.206043 = (-3.121066785982581, 0.7636098258797374)
0.09834 = (-3.121072530915293, 0.7636152126542727) 0.20604 = (-3.121090990541824, 0.7636094366563054)
0.323658 = (-1.6734036711848763, 0.6029842201360788) 0.35662 = (-1.6734036711830438, 0.6029842201085577)
0.32366 = (-1.6733846897314262, 0.6029854802879335) 0.35662 = (-1.673398706200449, 0.6029835616943323)
0.676342 = (1.6734036711848743, 0.6029842201360789) 0.64338 = (1.6734036711830438, 0.6029842201085577)
0.67634 = (1.6733846897314277, 0.6029854802879335) 0.64338 = (1.6733987062004476, 0.6029835616943322)
0.901658 = (3.121066785982245, 0.7636098258800624) 0.793957 = (3.121066785982581, 0.7636098258797375)
0.90166 = (3.1210725309152925, 0.7636152126542726) 0.79396 = (3.121090990541824, 0.7636094366563053)
===============================
=== Intersection Testcase 2 ===
/build/source/tests/bezier-test.cpp:482: Failure
Expected equality of these values:
xs.size()
Which is: 8
tests[i].s.size()
Which is: 9
0.0302928 = (0.008092118059121703, 1.1724967390877061) 0.854301 = (0.008092118008751363, 1.172496739088341)
0.03029 = (0.008090613339665998, 1.1723957688107862) 0.8543 = (0.008081056517999043, 1.1724984640420002)
0.054713 = (0.025958896832815853, 1.9777858106544133) 0.618252 = (0.02595889679504544, 1.977785810651963)
0.05471 = (0.025956114287334, 1.9776945904562138) 0.61825 = (0.025983788406250805, 1.9777959828437501)
0.145699 = (0.17249673908055327, 3.99190788194131) 0.0302928 = (0.17249673908285076, 3.991907881940951)
0.1457 = (0.172498464042, 3.991918943482) 0.03029 = (0.17239576881078605, 3.9919093866603337)
0.381748 = (0.9777858106719656, 3.974041103156008) 0.054713 = (0.9777858106962023, 3.9740411031659093)
0.38175 = (0.9777959828437498, 3.9740162115937494) 0.05471 = (0.9776945904562141, 3.9740438857126654)
0.618252 = (2.022214189328033, 1.0259588968439954) 0.945287 = (2.022214189303793, 1.0259588968340907)
0.5 = (1.5, 2.5) 0.5 = (1.5, 2.5)
0.854301 = (2.8275032609194466, 1.0080921180586893) 0.969707 = (2.827503260917146, 1.0080921180590494)
0.61825 = (2.0222040171562496, 1.0259837884062506) 0.94529 = (2.022305409543785, 1.0259561142873341)
0.945287 = (2.9740411031671843, 3.02221418934559) 0.381748 = (2.9740411032049536, 3.0222141893480368)
0.8543 = (2.827501535958, 1.0080810565179994) 0.96971 = (2.8276042311892127, 1.008090613339666)
0.969707 = (2.991907881940878, 3.827503260912293) 0.145699 = (2.9919078819912497, 3.82750326091166)
0.94529 = (2.974043885712666, 3.022305409543785) 0.38175 = (2.97401621159375, 3.0222040171562496)
===============================
=== Intersection Testcase 3 ===
0.231215 = (-3.643407117713096, 1.4982293620032887) 0.273064 = (-3.6434071177130223, 1.4982293619538314)
0.2312 = (-3.643565506560001, 1.4982257022494074) 0.27305 = (-3.6436035612038045, 1.4982290527957476)
0.293304 = (-2.923831652507655, 1.50087103985563) 0.321486 = (-2.9238316091496235, 1.5008710396491345)
0.2933 = (-2.92387530474, 1.5008712477562254) 0.32148 = (-2.92392147145311, 1.5008707067466411)
0.448242 = (-0.7735967881661547, 1.4998992547211691) 0.454071 = (-0.7735967881661525, 1.499899254720173)
0.44827 = (-0.7731814177456606, 1.49990025423158) 0.45409 = (-0.7732760918361222, 1.499898617920321)
0.551758 = (0.7735967881657213, 1.4998992547211702) 0.545929 = (0.7735967881657168, 1.4998992547201722)
0.55173 = (0.7731814177456607, 1.4999002542315794) 0.54591 = (0.7732760918361219, 1.4998986179203206)
0.706696 = (2.9238316525075567, 1.5008710398556295) 0.678514 = (2.9238316091495737, 1.5008710396491343)
0.7067 = (2.92387530474, 1.5008712477562254) 0.67852 = (2.9239214714531103, 1.5008707067466416)
0.768785 = (3.643407117713068, 1.4982293620032892) 0.726936 = (3.643407117712995, 1.4982293619538314)
0.7688 = (3.6435655065600003, 1.498225702249407) 0.72695 = (3.6436035612038054, 1.498229052795748)
===============================
=== Intersection Testcase 4 ===
0.0661333 = (-5.693090198641756, 2.2339345339034904) 0.144182 = (-5.6930901975133, 2.2339345313663275)
0.06613 = (-5.693050425989255, 2.233848709105078) 0.14418 = (-5.69312, 2.2339212760000002)
0.351518 = (-2.681125372342476, 3.219201825693949) 0.33243 = (-2.6811253723426067, 3.219201825694559)
0.35152 = (-2.681094877755051, 3.2191906036971716) 0.33243 = (-2.68112, 3.219202951)
0.648482 = (2.6811253723424797, 3.2192018256939514) 0.66757 = (2.6811253723426027, 3.2192018256945603)
0.64848 = (2.6810948777550516, 3.219190603697173) 0.66757 = (2.68112, 3.219202951)
0.933867 = (5.693090198641759, 2.2339345339034944) 0.855818 = (5.6930901975133, 2.2339345313663275)
0.93387 = (5.693050425989258, 2.2338487091050787) 0.85582 = (5.69312, 2.233921276)
[ FAILED ] BezierTest.Intersection (0 ms)
[ RUN ] BezierTest.QuadraticIntersectLineSeg
[ OK ] BezierTest.QuadraticIntersectLineSeg (0 ms)
[ RUN ] BezierTest.QuadraticIntersectLineRandom
[ OK ] BezierTest.QuadraticIntersectLineRandom (18 ms)
[ RUN ] BezierTest.CubicIntersectLine
[ OK ] BezierTest.CubicIntersectLine (0 ms)
[ RUN ] BezierTest.CubicIntersectLineRandom
[ OK ] BezierTest.CubicIntersectLineRandom (24 ms)
[ RUN ] BezierTest.Balloon
[ OK ] BezierTest.Balloon (0 ms)
[ RUN ] BezierTest.ExpandToTransformedTest
[ OK ] BezierTest.ExpandToTransformedTest (0 ms)
[ RUN ] BezierTest.TimesWithRadiusOfCurvature
[ OK ] BezierTest.TimesWithRadiusOfCurvature (0 ms)
[ RUN ] BezierTest.ForwardDifferenceTest
[ OK ] BezierTest.ForwardDifferenceTest (0 ms)
[ RUN ] BezierTest.Coincident
[ OK ] BezierTest.Coincident (0 ms)
[ RUN ] BezierTest.InfiniteRecursion
[ OK ] BezierTest.InfiniteRecursion (0 ms)
[----------] 23 tests from BezierTest (70 ms total)
[----------] Global test environment tear-down
[==========] 23 tests from 1 test suite ran. (70 ms total)
[ PASSED ] 22 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] BezierTest.Intersection
1 FAILED TEST
Start 24: root-find-test
17/25 Test #23: sbasis-text-test ................. Passed 0.01 sec
Start 25: implicitization-test
18/25 Test #25: implicitization-test ............. Passed 0.01 sec
19/25 Test #8: ellipse-test .....................***Failed 0.10 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 12 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 12 tests from EllipseTest
[ RUN ] EllipseTest.Arcs
[ OK ] EllipseTest.Arcs (0 ms)
[ RUN ] EllipseTest.AreNear
[ OK ] EllipseTest.AreNear (0 ms)
[ RUN ] EllipseTest.Transformations
[ OK ] EllipseTest.Transformations (0 ms)
[ RUN ] EllipseTest.TimeAt
[ OK ] EllipseTest.TimeAt (0 ms)
[ RUN ] EllipseTest.LineIntersection
[ OK ] EllipseTest.LineIntersection (87 ms)
[ RUN ] EllipseTest.EllipseIntersection
/build/source/tests/ellipse-test.cpp:231: Failure
Expected: (xs.size()) > (0), actual: 0 vs 0
[ FAILED ] EllipseTest.EllipseIntersection (0 ms)
[ RUN ] EllipseTest.BezierIntersection
[ OK ] EllipseTest.BezierIntersection (0 ms)
[ RUN ] EllipseTest.Coefficients
[ OK ] EllipseTest.Coefficients (0 ms)
[ RUN ] EllipseTest.UnitCircleTransform
[ OK ] EllipseTest.UnitCircleTransform (0 ms)
[ RUN ] EllipseTest.PointAt
[ OK ] EllipseTest.PointAt (0 ms)
[ RUN ] EllipseTest.UnitTangentAt
[ OK ] EllipseTest.UnitTangentAt (0 ms)
[ RUN ] EllipseTest.Bounds
[ OK ] EllipseTest.Bounds (9 ms)
[----------] 12 tests from EllipseTest (96 ms total)
[----------] Global test environment tear-down
[==========] 12 tests from 1 test suite ran. (96 ms total)
[ PASSED ] 11 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] EllipseTest.EllipseIntersection
1 FAILED TEST
20/25 Test #19: polynomial-test ..................***Failed 0.08 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 9 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 9 tests from PolynomialTest
[ RUN ] PolynomialTest.SolveQuadratic
[ OK ] PolynomialTest.SolveQuadratic (0 ms)
[ RUN ] PolynomialTest.SolvePathologicalQuadratic
[ OK ] PolynomialTest.SolvePathologicalQuadratic (0 ms)
[ RUN ] PolynomialTest.SolveCubic
[ OK ] PolynomialTest.SolveCubic (0 ms)
[ RUN ] PolynomialTest.SolveQuartic_4_roots
[ OK ] PolynomialTest.SolveQuartic_4_roots (14 ms)
[ RUN ] PolynomialTest.SolveQuartic_Evaluate
/build/source/tests/polynomial-test.cpp:186: Failure
Value of: are_near(quartic.eval(root), 0, eps)
Actual: false
Expected: true
[ FAILED ] PolynomialTest.SolveQuartic_Evaluate (20 ms)
[ RUN ] PolynomialTest.SolveQuartic_2_roots
[ OK ] PolynomialTest.SolveQuartic_2_roots (11 ms)
[ RUN ] PolynomialTest.SolveQuartic_DoubleRoots
[ OK ] PolynomialTest.SolveQuartic_DoubleRoots (1 ms)
[ RUN ] PolynomialTest.SolveQuartic_0_roots
[ OK ] PolynomialTest.SolveQuartic_0_roots (8 ms)
[ RUN ] PolynomialTest.SolveQuartic_degenerate
[ OK ] PolynomialTest.SolveQuartic_degenerate (21 ms)
[----------] 9 tests from PolynomialTest (78 ms total)
[----------] Global test environment tear-down
[==========] 9 tests from 1 test suite ran. (78 ms total)
[ PASSED ] 8 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] PolynomialTest.SolveQuartic_Evaluate
1 FAILED TEST
21/25 Test #9: elliptical-arc-test ..............***Failed 0.12 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 7 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 6 tests from EllipticalArcTest
[ RUN ] EllipticalArcTest.PointAt
[ OK ] EllipticalArcTest.PointAt (0 ms)
[ RUN ] EllipticalArcTest.Duplicate
[ OK ] EllipticalArcTest.Duplicate (0 ms)
[ RUN ] EllipticalArcTest.LineSegmentIntersection
[ OK ] EllipticalArcTest.LineSegmentIntersection (111 ms)
[ RUN ] EllipticalArcTest.ArcIntersection
/build/source/tests/elliptical-arc-test.cpp:187: Failure
Expected equality of these values:
r1.size()
Which is: 0
2u
Which is: 2
[ FAILED ] EllipticalArcTest.ArcIntersection (0 ms)
[ RUN ] EllipticalArcTest.BezierIntersection
[ OK ] EllipticalArcTest.BezierIntersection (0 ms)
[ RUN ] EllipticalArcTest.ExpandToTransformedTest
/build/source/tests/elliptical-arc-test.cpp:266: Failure
The difference between box1[i].max() and box2[i].max() is 2.2204460492503131e-15, which exceeds 2e-15, where
box1[i].max() evaluates to 0.13015544565598436,
box2[i].max() evaluates to 0.13015544565598214, and
2e-15 evaluates to 2.0000000000000002e-15.
/build/source/tests/elliptical-arc-test.cpp:266: Failure
The difference between box1[i].max() and box2[i].max() is 2.2204460492503131e-15, which exceeds 2e-15, where
box1[i].max() evaluates to 2.7383260684577753,
box2[i].max() evaluates to 2.738326068457773, and
2e-15 evaluates to 2.0000000000000002e-15.
/build/source/tests/elliptical-arc-test.cpp:266: Failure
The difference between box1[i].max() and box2[i].max() is 2.2204460492503131e-15, which exceeds 2e-15, where
box1[i].max() evaluates to 0.13015544565598436,
box2[i].max() evaluates to 0.13015544565598214, and
2e-15 evaluates to 2.0000000000000002e-15.
[ FAILED ] EllipticalArcTest.ExpandToTransformedTest (2 ms)
[----------] 6 tests from EllipticalArcTest (114 ms total)
[----------] 1 test from EllipticalArc
[ RUN ] EllipticalArc.Transform
[ OK ] EllipticalArc.Transform (0 ms)
[----------] 1 test from EllipticalArc (0 ms total)
[----------] Global test environment tear-down
[==========] 7 tests from 2 test suites ran. (114 ms total)
[ PASSED ] 5 tests.
[ FAILED ] 2 tests, listed below:
[ FAILED ] EllipticalArcTest.ArcIntersection
[ FAILED ] EllipticalArcTest.ExpandToTransformedTest
2 FAILED TESTS
22/25 Test #7: coord-test ....................... Passed 0.14 sec
23/25 Test #21: sbasis-test ...................... Passed 0.08 sec
24/25 Test #12: line-test ........................***Failed 0.19 sec
Running main() from /build/source/googletest/src/gtest_main.cc
[==========] Running 15 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 15 tests from LineTest
[ RUN ] LineTest.VectorAndVersor
[ OK ] LineTest.VectorAndVersor (0 ms)
[ RUN ] LineTest.AngleBisector
[ OK ] LineTest.AngleBisector (0 ms)
[ RUN ] LineTest.Equality
[ OK ] LineTest.Equality (0 ms)
[ RUN ] LineTest.Reflection
[ OK ] LineTest.Reflection (0 ms)
[ RUN ] LineTest.RotationToZero
[ OK ] LineTest.RotationToZero (0 ms)
[ RUN ] LineTest.Coefficients
[ OK ] LineTest.Coefficients (0 ms)
[ RUN ] LineTest.Intersection
[ OK ] LineTest.Intersection (0 ms)
[ RUN ] LineTest.CoincidingIntersect
/build/source/tests/line-test.cpp:197: Failure
Expected equality of these values:
xings.size()
Which is: 1
2
/build/source/tests/line-test.cpp:197: Failure
Expected equality of these values:
xings.size()
Which is: 1
2
[ FAILED ] LineTest.CoincidingIntersect (37 ms)
[ RUN ] LineTest.OverlappingIntersect
[ OK ] LineTest.OverlappingIntersect (35 ms)
[ RUN ] LineTest.AlmostIntersect
[ OK ] LineTest.AlmostIntersect (0 ms)
[ RUN ] LineTest.FuzzyOverlap
[ OK ] LineTest.FuzzyOverlap (0 ms)
[ RUN ] LineTest.FuzzyEndToEnd
[ OK ] LineTest.FuzzyEndToEnd (0 ms)
[ RUN ] LineTest.AlmostTouch
[ OK ] LineTest.AlmostTouch (0 ms)
[ RUN ] LineTest.TBone
[ OK ] LineTest.TBone (54 ms)
[ RUN ] LineTest.PushOff
[ OK ] LineTest.PushOff (53 ms)
[----------] 15 tests from LineTest (181 ms total)
[----------] Global test environment tear-down
[==========] 15 tests from 1 test suite ran. (181 ms total)
[ PASSED ] 14 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] LineTest.CoincidingIntersect
1 FAILED TEST
25/25 Test #24: root-find-test ................... Passed 0.67 sec
72% tests passed, 7 tests failed out of 25
Can be reproduces relatively simple with:
nix-build -A lib2geom --argstr system i686-linux
I assume it's similar to #63, #67, #68 so im not sure if there is any interest or if this code is intended to work 64bit only?