OSDN Git Service

Doh! In include/bits/uClibc_config.h when we define things, we appropriately
authorEric Andersen <andersen@codepoet.org>
Tue, 21 Oct 2003 00:52:14 +0000 (00:52 -0000)
committerEric Andersen <andersen@codepoet.org>
Tue, 21 Oct 2003 00:52:14 +0000 (00:52 -0000)
prepend "__".  Unfortunately, when we #undef things, we do not prepend the
"__".  This results in collateral damage to unsuspecting applications as we
undefine random unrelated macros.  Oops.

For example, when compiling xfree86, libGLcore.a defines MALLOC for its own usage.
But include/bits/uClibc_config.h then does an
    #undef MALLOC
    #define __MALLOC_930716__ 1
which inadvertantly trashes the define from libGLcore....  Ouch.

The autogenerated include/bits/uClibc_config.h should instead have
contained:
    #undef __MALLOC__
    #define __MALLOC_930716__ 1

This patch makes that happen.

extra/config/confdata.c

index 694477f..114c763 100644 (file)
@@ -347,7 +347,7 @@ int conf_write(const char *name)
                                case no:
                                        fprintf(out, "# %s is not set\n", sym->name);
                                        if (out_h)
-                                               fprintf(out_h, "#undef %s\n", sym->name);
+                                               fprintf(out_h, "#undef __%s__\n", sym->name);
                                        break;
                                case mod:
                                        fprintf(out, "%s=m\n", sym->name);