Please provide a full log file for the build in Macports, and also one for exactly what commands you run and output you get when built outside ?

On 04/08/2022 2:36 pm, Robert Kennedy wrote:
I am working on creating a new port that uses its own *config.h*.  See attached.  The project compiles and builds just in clang outside of Macports but when it is built via Macports, a number of macro redefined warnings are generated:

e.g.

    .*/config.h:29:9: warning: 'HAVE_STDINT_H' macro redefined*
    *#define HAVE_STDINT_H*
    *        ^*
    *./config.h:42:9: note: previous definition is here*
    *#define HAVE_STDINT_H 1*


I suspect Macports or the compiler is creating or referencing another *config.h*.

For this project, it looks like the simple solution is to add *include guards*to *config.h.*

In my view, It is not good practice to directly include in /header/files #*|include| <|config.h>|*or *#include "config.h"* since this would lead to bad name conflicts etc.

The best solution appears to be outlined here:
https://stackoverflow.com/questions/28637542/ensure-config-h-is-included-once <https://stackoverflow.com/questions/28637542/ensure-config-h-is-included-once>

But that would involve patching 30 or so source code files.

Has anyone else run into this issue regarding *config.h* using Macports and what solution did you employ?

Rob

Reply via email to