Ich bin an einem Software-Projekt beteiligt, das in Qt geschrieben wurde und mit qmake und gcc unter Linux erstellt wurde. Wir müssen auf eine Bibliothek von Drittanbietern verweisen, die von relativ geringer Qualität ist und jede Menge Warnungen ausgibt. Ich würde gerne -Wall auf unseren Quellcode verwenden, aber -w an die fiese Third-Party-Bibliothek übergeben, um die Konsole frei von Rauschen und Unordnung zu halten, damit wir uns auf unsere Codequalität konzentrieren können.Bedingte Warnungen mit qmake/gcc deaktivieren?
Gibt es in qmake eine Möglichkeit, bestimmte Dateien und Bibliotheken CFLAGS/CXXFLAGS bedingt hinzuzufügen?
Richtig, die Warnungen stammen von den Headers von Drittanbietern. Ich werde in Pragmas schauen, aber gibt es eine Möglichkeit, die ich nur in die Header von Drittanbietern einfügen kann, oder muss ich ihre Header bearbeiten? –
Sie könnten Header Wrapper für die Header der dritten Partei einführen. Ein Brute-Force-Ansatz wäre es, jedes Include für einen Header eines Drittanbieters in einen einzigen Header einzufügen, dann fügt Ihre App diesen Header einfach hinzu, wenn dies erforderlich ist. Z.B. Wenn Ihre App Bibliothekszed verwendet, erstellen Sie einen zed.h-Header, der alle Zed-Header enthält. Dann können Sie die Pragmen zu zed.h hinzufügen. Oder gehen Sie einfach durch Ihren Code und umschließen Sie jedes #include mit Pragmas. –