Sí, es posible, pero solo si compila los archivos de terceros en un destino diferente. De esta manera, puede establecer diferentes indicadores de compilación.
Digamos que su objetivo principal es una aplicación. Usted definió su configuración de compilación, así como las banderas de advertencia del compilador.
Ahora quiere utilizar algunas fuentes de terceros. Los importa a su proyecto, pero generan una advertencia. Por supuesto, puede cambiar la configuración de su objetivo principal, pero estoy bastante seguro de que desea mantener su propia configuración.
Simplemente cree un objetivo adicional en su proyecto, que es una biblioteca estática. Elimina los archivos de terceros de su destino principal y los agrega a la biblioteca.
En las fases de compilación de su objetivo principal, vincule su aplicación con la biblioteca estática.
De esta manera, podrá usar el código de terceros en su aplicación, mientras tenga configuraciones de compilador diferentes para el código de un tercero.
Es posible que funcione, pero yo personalmente creo que esto es una mala opción, ya que el código será dependiente de pragmas del Clang ... – Macmade
@Macmade sus datos de respuesta la segunda sección de mi respuesta. si está enlazando a la biblioteca, * es probable * que desee * usar * en su programa en algún momento. ¿Cómo proponen desactivar las advertencias generadas por los encabezados de terceros cuando están incluidos en su proyecto? tenga en cuenta que también puede ajustar el '#pragma clang diagnostic's en las comprobaciones del compilador (porque algunos compiladores se quejarán de pragmas desconocidos, si se solicita). – justin
Tiene razón, pero si las advertencias provienen de los archivos de encabezado, entonces trataré de buscar otra solución, ya que puede implicar un código muy malo ...:) – Macmade