[M3devel] build_platform in archive names
Olaf Wagner
wagner at elegosoft.com
Sat Aug 7 16:59:43 CEST 2010
I've left out Windows, because I wasn't sure what exactly was needed
there. Feel free to add an appropriate string for all Windows-based
target platforms!
Olaf
Quoting Jay K <jay.krell at cornell.edu>:
> Thanks!
> I want something slightly different for NT platforms.
> NT doesn't have the binary incompatibility and cross-build problem
> of Unix, at the OS level.
> (and commercial Unix isn't so bad either I think these days)
> However it does sort of have it at the C runtime level.
> i.e. There is no need to say e.g. XP/Vista/Win7/NT5.1/6.0/6.1, but
> there is a need to say e.g. msvc70/71/80/90/100.
> And there probably is a need for Cygwin-1.5 vs. Cygwin-1.7 (ie.
> exactly what you have).
>
> You can see in pylib.py:
>
> def FormInstallRoot(PackageSetName):
> AltConfig = {"NT386":"x86"}.get(Config, Config)
> a = os.path.join(GetStage(), "cm3-" + PackageSetName + "-" +
> AltConfig + "-" + CM3VERSION)
> if Config == "NT386" or Config == "I386_NT":
> a = a + "-VC" + GetVisualCPlusPlusVersion()
> else:
> b = os.popen("uname -sr").read()
> b = re.sub("Linux 2.4\..+$", "Linux2.4", b)
> b = re.sub("Linux 2.6\..+$", "", b)
> b = re.sub("-.+$", "", b)
> b = re.sub("SunOS", "Solaris", b)
> b = re.sub("[ \r\n]", "", b)
> a = a + "-" + b
> a = a + "-" + time.strftime("%Y%m%d")
> return a
>
>
> uname -p redundant with $(TARGET), er..the other way around..
> config.guess/uname maybe is the preferable way.
> I guess that's a bigger leap right now, and it isn't entirely true,
> e.g. on "biarch" systems, e.g. AMD64_{DARWIN,SOLARIS},
> SPARC64_SOLARIS, PPC64_DARWIN, etc..
>
>
> def GetVisualCPlusPlusVersion():
> a = os.popen("cl 2>&1 >nul").read().lower()
> if a.find("9.00") != -1:
> return "20"
> if a.find("10.00") != -1:
> return "40"
> if a.find("10.10") != -1:
> return "41"
> if a.find("10.20") != -1:
> return "42"
> if a.find("11.00") != -1:
> return "50"
> if a.find("12.00") != -1:
> return "60"
> if a.find("13.00") != -1:
> return "70"
> if a.find("13.10") != -1:
> return "71"
> if a.find("14.00") != -1:
> return "80"
> if a.find("15.00") != -1:
> return "90"
> if a.find("16.00") != -1:
> return "100"
> FatalError("unable to detect Visual C++ version, maybe cl is not
> in %PATH%?")
>
>
> but I'm just talking..need to try to work it in to your *.sh.
>
>
> - Jay
>
> ----------------------------------------
>> Date: Sat, 7 Aug 2010 12:58:48 +0000
>> To: m3commit at elegosoft.com
>> From: wagner at elego.de
>> Subject: [M3commit] CVS Update: cm3
>>
>> CVSROOT: /usr/cvs
>> Changes by: wagner at birch. 10/08/07 12:58:48
>>
>> Modified files:
>> cm3/scripts/: make-bin-dist-min.sh make-dist.sh sysinfo.sh
>> cm3/scripts/regression/: update_snapshot_status.sh
>>
>> Log message:
>> fix snapshot support and add build_platform
>>
>
--
Olaf Wagner -- elego Software Solutions GmbH
Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194
More information about the M3devel
mailing list