Skip to content

Commit fadf9d1

Browse files
committed
build: fix default flags for Apple clang
Change-Id: Id65337dbfa19d17aa848da54d8b65a2759c2013d
1 parent f1067cb commit fadf9d1

File tree

2 files changed

+11
-65
lines changed

2 files changed

+11
-65
lines changed

.waf-tools/default-compiler-flags.py

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -225,12 +225,13 @@ def getGeneralFlags(self, conf):
225225
['-isystem', f'{brewdir}/include'], # for Homebrew
226226
['-isystem', '/opt/local/include'], # for MacPorts
227227
]
228-
elif Utils.unversioned_sys_platform() == 'freebsd':
229-
# Bug #4790
230-
flags['CXXFLAGS'] += [['-isystem', '/usr/local/include']]
231-
if get_compiler_ver(conf) >= (18, 0, 0) and get_compiler_ver(conf) < (20, 1, 0):
232-
# Bug #5300
233-
flags['CXXFLAGS'] += ['-Wno-enum-constexpr-conversion']
228+
else:
229+
if Utils.unversioned_sys_platform() == 'freebsd':
230+
# Bug #4790
231+
flags['CXXFLAGS'] += [['-isystem', '/usr/local/include']]
232+
if get_compiler_ver(conf) >= (18, 0, 0) and get_compiler_ver(conf) < (20, 1, 0):
233+
# Bug #5300
234+
flags['CXXFLAGS'] += ['-Wno-enum-constexpr-conversion']
234235
return flags
235236

236237
__cxxFlags = [
@@ -241,11 +242,13 @@ def getGeneralFlags(self, conf):
241242
def getDebugFlags(self, conf):
242243
flags = super().getDebugFlags(conf)
243244
flags['CXXFLAGS'] += self.__cxxFlags
245+
ccver = get_compiler_ver(conf)
246+
darwin = Utils.unversioned_sys_platform() == 'darwin'
244247
# Enable assertions in libc++
245-
if get_compiler_ver(conf) >= (18, 0, 0):
248+
if (darwin and ccver >= (17, 0, 0)) or (not darwin and ccver >= (18, 0, 0)):
246249
# https://libcxx.llvm.org/Hardening.html
247250
flags['DEFINES'] += ['_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE']
248-
elif get_compiler_ver(conf) >= (15, 0, 0):
251+
elif ccver >= (15, 0, 0):
249252
# https://releases.llvm.org/15.0.0/projects/libcxx/docs/UsingLibcxx.html#enabling-the-safe-libc-mode
250253
flags['DEFINES'] += ['_LIBCPP_ENABLE_ASSERTIONS=1']
251254
# Tell libc++ to avoid including transitive headers

docs/doxygen.conf.in

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,14 +1090,6 @@ HTML_COLORSTYLE_SAT = 0
10901090

10911091
HTML_COLORSTYLE_GAMMA = 91
10921092

1093-
# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
1094-
# page will contain the date and time when the page was generated. Setting this
1095-
# to NO can help when comparing the output of multiple runs.
1096-
# The default value is: YES.
1097-
# This tag requires that the tag GENERATE_HTML is set to YES.
1098-
1099-
HTML_TIMESTAMP = NO
1100-
11011093
# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
11021094
# documentation will contain sections that can be hidden and shown after the
11031095
# page has loaded.
@@ -1367,17 +1359,6 @@ EXT_LINKS_IN_WINDOW = NO
13671359

13681360
FORMULA_FONTSIZE = 10
13691361

1370-
# Use the FORMULA_TRANPARENT tag to determine whether or not the images
1371-
# generated for formulas are transparent PNGs. Transparent PNGs are not
1372-
# supported properly for IE 6.0, but are supported on all modern browsers.
1373-
#
1374-
# Note that when changing this option you need to delete any form_*.png files in
1375-
# the HTML output directory before the changes have effect.
1376-
# The default value is: YES.
1377-
# This tag requires that the tag GENERATE_HTML is set to YES.
1378-
1379-
FORMULA_TRANSPARENT = YES
1380-
13811362
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
13821363
# http://www.mathjax.org) which uses client side Javascript for the rendering
13831364
# instead of using prerendered bitmaps. Use this if you do not have LaTeX
@@ -1975,15 +1956,6 @@ EXTERNAL_PAGES = YES
19751956
# Configuration options related to the dot tool
19761957
#---------------------------------------------------------------------------
19771958

1978-
# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram
1979-
# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
1980-
# NO turns the diagrams off. Note that this option also works with HAVE_DOT
1981-
# disabled, but it is recommended to install and use dot, since it yields more
1982-
# powerful graphs.
1983-
# The default value is: YES.
1984-
1985-
CLASS_DIAGRAMS = YES
1986-
19871959
# If set to YES, the inheritance and collaboration graphs will hide inheritance
19881960
# and usage relations if the target is undocumented or is not a class.
19891961
# The default value is: YES.
@@ -2009,23 +1981,6 @@ HAVE_DOT = @HAVE_DOT@
20091981

20101982
DOT_NUM_THREADS = 0
20111983

2012-
# When you want a differently looking font n the dot files that doxygen
2013-
# generates you can specify the font name using DOT_FONTNAME. You need to make
2014-
# sure dot is able to find the font, which can be done by putting it in a
2015-
# standard location or by setting the DOTFONTPATH environment variable or by
2016-
# setting DOT_FONTPATH to the directory containing the font.
2017-
# The default value is: Helvetica.
2018-
# This tag requires that the tag HAVE_DOT is set to YES.
2019-
2020-
DOT_FONTNAME = Helvetica
2021-
2022-
# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
2023-
# dot graphs.
2024-
# Minimum value: 4, maximum value: 24, default value: 10.
2025-
# This tag requires that the tag HAVE_DOT is set to YES.
2026-
2027-
DOT_FONTSIZE = 10
2028-
20291984
# By default doxygen will tell dot to use the default font as specified with
20301985
# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
20311986
# the path where dot can find it using this tag.
@@ -2208,18 +2163,6 @@ DOT_GRAPH_MAX_NODES = 10000
22082163

22092164
MAX_DOT_GRAPH_DEPTH = 0
22102165

2211-
# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
2212-
# background. This is disabled by default, because dot on Windows does not seem
2213-
# to support this out of the box.
2214-
#
2215-
# Warning: Depending on the platform used, enabling this option may lead to
2216-
# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
2217-
# read).
2218-
# The default value is: NO.
2219-
# This tag requires that the tag HAVE_DOT is set to YES.
2220-
2221-
DOT_TRANSPARENT = YES
2222-
22232166
# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
22242167
# files in one run (i.e. multiple -o and -T options on the command line). This
22252168
# makes dot run faster, but since only newer versions of dot (>1.8.10) support

0 commit comments

Comments
 (0)