From 7edcc22136f380bc8050708d0a39d423e232cdfb Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Thu, 11 Jun 2009 01:22:35 +0000 Subject: [PATCH] changed testcurl script to allow building test harness programs when cross-compiling for a *-*-mingw* host. --- CHANGES | 4 ++++ tests/testcurl.pl | 39 ++++++++++++++++++++++++++++++++++++--- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index b65b41721..bd4add6bb 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,10 @@ Changelog +Yang Tse (11 Jun 2009) +- I adapted testcurl script to allow building test harness programs when + cross-compiling for a *-*-mingw* host. + Daniel Stenberg (10 Jun 2009) - Fabian Keil ran clang on the (lib)curl code, found a bunch of warnings and contributed a range of patches to fix them. diff --git a/tests/testcurl.pl b/tests/testcurl.pl index 4b5319523..530f06017 100755 --- a/tests/testcurl.pl +++ b/tests/testcurl.pl @@ -228,6 +228,22 @@ sub mydie($){ exit 1; } +sub get_host_triplet { + my $triplet; + my $configfile = "$pwd/$build/lib/config.h"; + + if(-f $configfile && -s $configfile && open(LIBCONFIGH, "<$configfile")) { + while() { + if($_ =~ /^\#define\s+OS\s+"*([^"][^"]*)"*\s*/) { + $triplet = $1; + last; + } + } + close(LIBCONFIGH); + } + return $triplet; +} + if (open(F, "$setupfile")) { while () { if (/(\w+)=(.*)/) { @@ -683,11 +699,28 @@ if ($configurebuild && !$crosscompile) { } else { logit "the tests were successful!"; } -} else { - # dummy message to feign success +} +else { if($crosscompile) { - logit "cross-compiling, can't run tests"; + # build test harness programs for selected cross-compiles + my $host_triplet = get_host_triplet(); + if($host_triplet =~ /([^-]+)-([^-]+)-mingw(.*)/) { + chdir "$pwd/$build/tests"; + logit_spaced "build test harness"; + open(F, "$make -i 2>&1 |") or die; + open(LOG, ">$buildlog") or die; + while () { + s/$pwd//g; + print; + print LOG; + } + close(F); + close(LOG); + chdir "$pwd/$build"; + } + logit_spaced "cross-compiling, can't run tests"; } + # dummy message to feign success print "TESTDONE: 1 tests out of 0 (dummy message)\n"; }