Skip to content

Commit

Permalink
fix Issue 13889 - mscoff32 libs not available
Browse files Browse the repository at this point in the history
  • Loading branch information
MartinNowak committed Aug 26, 2015
1 parent c10d872 commit 95ace32
Showing 1 changed file with 31 additions and 18 deletions.
49 changes: 31 additions & 18 deletions create_dmd_release/create_dmd_release.d
Expand Up @@ -482,25 +482,27 @@ void buildAll(Bits bits, string branch, bool dmdOnly=false)
changeDir(cloneDir~"/phobos");
run(makecmd~msvcEnv);

version(OSX)
version(OSX) if(bits == Bits.bits64)
{
if(bits == Bits.bits64)
{
info("Building Phobos Universal Binary");
changeDir(cloneDir~"/phobos");
run(makecmd~" libphobos2.a");
}
info("Building Phobos Universal Binary");
changeDir(cloneDir~"/phobos");
run(makecmd~" libphobos2.a");
}
removeFiles(cloneDir~"/phobos", "*{"~obj~"}", SpanMode.depth);

version(Windows)
version (Windows) if (bits == Bits.bits64)
{
makeDir(cloneDir~"/phobos/generated/windows/release/"~bitsStr);
copyFile(
cloneDir~"/phobos/"~libPhobos~lib,
cloneDir~"/phobos/generated/windows/release/"~bitsStr~"/"~libPhobos~lib
);
info("Building Druntime 32mscoff");
changeDir(cloneDir~"/druntime");
run(makecmd~msvcEnv~" druntime32mscoff");
removeFiles(cloneDir~"/druntime", "*{"~obj~"}", SpanMode.depth,
file => !file.baseName.startsWith("gcstub", "minit"));

info("Building Phobos 32mscoff");
changeDir(cloneDir~"/phobos");
run(makecmd~msvcEnv~" phobos32mscoff");
removeFiles(cloneDir~"/phobos", "*{"~obj~"}", SpanMode.depth);
}
removeFiles(cloneDir~"/phobos", "*{"~obj~"}", SpanMode.depth);

// Build docs
if(!skipDocs)
Expand Down Expand Up @@ -599,6 +601,21 @@ void createRelease(string branch)
else if(do64Bit)
copyFile(cloneDir~"/phobos/generated/"~osDirName~"/release/64/libphobos2.a", releaseLib32Dir~"/libphobos2_64.a");
}
else version (Windows)
{
if(do32Bit)
{
copyFile(cloneDir~"/druntime/lib/gcstub.obj", osDir~"/lib/gcstub.obj");
copyFile(cloneDir~"/phobos/phobos.lib", osDir~"/lib/phobos.lib");
}
if(do64Bit)
{
copyFile(cloneDir~"/druntime/lib/gcstub64.obj", osDir~"/lib64/gcstub64.obj");
copyFile(cloneDir~"/phobos/phobos64.lib", osDir~"/lib64/phobos64.lib");
copyFile(cloneDir~"/druntime/lib/gcstub32mscoff.obj", osDir~"/lib32mscoff/gcstub32mscoff.obj");
copyFile(cloneDir~"/phobos/phobos32mscoff.lib", osDir~"/lib32mscoff/phobos32mscoff.lib");
}
}
else
{
import std.range : chain;
Expand All @@ -609,17 +626,13 @@ void createRelease(string branch)
// libphobos2.so.0.68.0, libphobos2.so.0.68, libphobos2.so
copyDir(cloneDir~"/phobos/generated/"~osDirName~"/release/32/", releaseLib32Dir~"/",
file => file.startsWith(chain(libPhobos32, dll)));
version (Windows)
copyFile(cloneDir~"/druntime/lib/gcstub.obj", releaseLib32Dir~"/gcstub.obj");
}
if(do64Bit)
{
copyFile(cloneDir~"/phobos/generated/"~osDirName~"/release/64/"~libPhobos64~lib, releaseLib64Dir~"/"~libPhobos64~lib);
// libphobos2.so.0.68.0, libphobos2.so.0.68, libphobos2.so
copyDir(cloneDir~"/phobos/generated/"~osDirName~"/release/64/", releaseLib64Dir~"/",
file => file.startsWith(chain(libPhobos64, dll)));
version (Windows)
copyFile(cloneDir~"/druntime/lib/gcstub64.obj", releaseLib64Dir~"/gcstub64.obj");
}
}

Expand Down

0 comments on commit 95ace32

Please sign in to comment.