Beispiel #1
0
int linkObjToBinary() {
  if (global.params.targetTriple->isWindowsMSVCEnvironment()) {
    return linkObjToBinaryMSVC(global.params.dll);
  }

  return linkObjToBinaryGcc(global.params.dll);
}
Beispiel #2
0
int linkObjToBinary(bool sharedLib, bool fullyStatic) {
  if (global.params.targetTriple.isWindowsMSVCEnvironment()) {
    // TODO: Choose dynamic/static MSVCRT version based on fullyStatic?
    return linkObjToBinaryWin(sharedLib);
  }

  return linkObjToBinaryGcc(sharedLib, fullyStatic);
}
Beispiel #3
0
int linkObjToBinary(bool sharedLib)
{
    int status;
    if (global.params.targetTriple.getOS() == llvm::Triple::Win32)
        status = linkObjToBinaryWin(sharedLib);
    else
        status = linkObjToBinaryGcc(sharedLib);
    return status;
}
Beispiel #4
0
int linkObjToBinary(bool sharedLib)
{
    int status;
#if LDC_LLVM_VER >= 305
    if (global.params.targetTriple.isWindowsMSVCEnvironment())
#else
    if (global.params.targetTriple.getOS() == llvm::Triple::Win32)
#endif
        status = linkObjToBinaryWin(sharedLib);
    else
        status = linkObjToBinaryGcc(sharedLib);
    return status;
}
Beispiel #5
0
int linkObjToBinary() {
  Logger::println("*** Linking executable ***");

  // remember output path for later
  gExePath = getOutputName();

  createDirectoryForFileOrFail(gExePath);

  if (global.params.targetTriple->isWindowsMSVCEnvironment()) {
    return linkObjToBinaryMSVC(gExePath, useInternalLinker, opts::staticFlag);
  }

  return linkObjToBinaryGcc(gExePath, useInternalLinker, opts::staticFlag);
}