]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libgcov: Fix build on Darwin [PR99406]
authorJakub Jelinek <jakub@redhat.com>
Sat, 6 Mar 2021 15:22:27 +0000 (16:22 +0100)
committerJakub Jelinek <jakub@redhat.com>
Sat, 6 Mar 2021 15:22:27 +0000 (16:22 +0100)
As reported, bootstrap currently fails on older Darwin because MAP_ANONYMOUS
is not defined.

The following is what gcc/system.h does, so I think it should work for
libgcov.

2021-03-06  Jakub Jelinek  <jakub@redhat.com>

PR gcov-profile/99406
* libgcov.h (MAP_FAILED, MAP_ANONYMOUS): If HAVE_SYS_MMAN_H is
defined, define these macros if not defined already.

libgcc/libgcov.h

index 2780cc098c86dd709a5b02cb07a5a7ba168411b6..7b0d367ec52693dec4ea2a798635b3e32fa8f300 100644 (file)
@@ -172,6 +172,16 @@ extern struct gcov_info *gcov_list;
 #define ATTRIBUTE_HIDDEN
 #endif
 
+#if HAVE_SYS_MMAN_H
+#ifndef MAP_FAILED
+#define MAP_FAILED ((void *)-1)
+#endif
+
+#if !defined (MAP_ANONYMOUS) && defined (MAP_ANON)
+#define MAP_ANONYMOUS MAP_ANON
+#endif
+#endif
+
 #include "gcov-io.h"
 
 /* Structures embedded in coveraged program.  The structures generated