Ignore:
Timestamp:
Jul 7, 2011, 1:55:27 AM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

qmake: os2/gnumake: Fixed shadow build support. Closes #220 [based on a patch by rudi].

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/qmake/generators/os2/gnumake.cpp

    r880 r882  
    424424        && project->isActiveConfig("precompile_header")) {
    425425        QString preCompHeader = var("PRECOMPILED_DIR")
    426                          + QFileInfo(project->first("PRECOMPILED_HEADER")).fileName();
     426                         + QFileInfo(project->first("PRECOMPILED_HEADER")).fileName();
    427427        preCompHeaderOut = preCompHeader + ".gch";
    428428        project->values("QMAKE_CLEAN").append(preCompHeaderOut + Option::dir_sep + "c");
     
    430430
    431431        project->values("QMAKE_RUN_CC").clear();
    432             project->values("QMAKE_RUN_CC").append("$(CC) -c -include " + preCompHeader +
     432            project->values("QMAKE_RUN_CC").append("$(CC) -c -include " + preCompHeader +
    433433                                               " $(CFLAGS) $(INCPATH) -o $obj $src");
    434434        project->values("QMAKE_RUN_CC_IMP").clear();
     
    565565{
    566566    if (!project->isEmpty("RC_FILE")) {
    567         t << "RC_FILE       = " << escapeFilePath(var("RC_FILE")) << endl;
     567        t << "RC_FILE       = " << escapeFilePath(fileFixify(var("RC_FILE"))) << endl;
    568568    }
    569569    if (!project->isEmpty("RES_FILE")) {
    570         t << "RES_FILE      = " << valList(escapeFilePaths(project->values("RES_FILE"))) << endl;
     570        t << "RES_FILE      = " << valList(escapeFilePaths(fileFixify(project->values("RES_FILE")))) << endl;
    571571    }
    572572
     
    589589            }
    590590            if (!project->isEmpty("DEF_FILE_TEMPLATE")) {
    591                 t << "DEF_FILE_TEMPLATE       = " << escapeFilePath(var("DEF_FILE_TEMPLATE")) << endl;
     591                t << "DEF_FILE_TEMPLATE       = " << escapeFilePath(fileFixify(var("DEF_FILE_TEMPLATE"))) << endl;
    592592                haveSomething = true;
    593593            }
    594594            if (!project->isEmpty("DEF_FILE_MAP")) {
    595                 t << "DEF_FILE_MAP            = " << escapeFilePath(var("DEF_FILE_MAP")) << endl;
     595                t << "DEF_FILE_MAP            = " << escapeFilePath(fileFixify(var("DEF_FILE_MAP"))) << endl;
    596596                haveSomething = true;
    597597            }
     
    601601            } else if (haveSomething) {
    602602                // the EXE needs it only if there's a description info
    603                 t << "DEF_FILE_EXETYPE        = " << escapeFilePath(var("DEF_FILE_EXETYPE")) << endl;
     603                t << "DEF_FILE_EXETYPE        = " << var("DEF_FILE_EXETYPE") << endl;
    604604                t << "DEF_FILE      = $(OBJECTS_DIR)\\$(TARGET).def" << endl;
    605605            }
     
    610610                exit(1);
    611611            }
    612             t << "DEF_FILE      = " << escapeFilePath(var("DEF_FILE")) << endl;
     612            t << "DEF_FILE      = " << escapeFilePath(fileFixify(var("DEF_FILE"))) << endl;
    613613        }
    614614    }
     
    643643            exit(1);
    644644        }
    645         project->values("RES_FILE").prepend(escapeFilePath(QString("$(OBJECTS_DIR)") +
     645        project->values("RES_FILE").prepend(escapeFilePath(QString("$(OBJECTS_DIR)") +
    646646                                                           QDir::separator() +
    647647                                                           QFileInfo(var("RC_FILE")).baseName() +
    648648                                                           ".res"));
    649         project->values("CLEAN_FILES") += "$(RES_FILE)";
     649        project->values("CLEAN_FILES") += "$(RES_FILE)";
    650650    }
    651651
     
    719719    QString filePath = project->first("OBJECTS_DIR");
    720720    if (filePath.isEmpty())
    721         filePath = Option::output_dir;
     721        filePath = fileFixify(Option::output_dir);
    722722    filePath = Option::fixPathToTargetOS(filePath + QDir::separator() + fileName);
    723723    return filePath;
     
    741741            QString fileName = makeResponseFileName(vars[i]);
    742742            t << rspVar.leftJustified(14) << "= " << fileName << endl;
    743             QFile file(fileName);
     743            QFile file(QDir(Option::output_dir).absoluteFilePath(fileName));
    744744            if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
    745745                QTextStream rt(&file);
     
    772772        QString fileName = makeResponseFileName("OBJECTS");
    773773        t << var.leftJustified(14) << "= " << fileName << endl;
    774         QFile file(fileName);
     774        QFile file(QDir(Option::output_dir).absoluteFilePath(fileName));
    775775        if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
    776776            QTextStream rt(&file);
Note: See TracChangeset for help on using the changeset viewer.