Skip to content

Commit 7be0fda

Browse files
committed
mingw
1 parent f7ca151 commit 7be0fda

1 file changed

Lines changed: 13 additions & 61 deletions

File tree

selfcheck.sh

Lines changed: 13 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -20,91 +20,43 @@ if [ "$cxx_type" = "Ubuntu" ]; then
2020
fi
2121

2222
if [ "$cxx_type" = "g++" ] || [ "$cxx_type" = "g++.exe" ]; then
23-
gcc_ver=$($CXX -dumpversion)
24-
gcc_target=$($CXX -v 2>&1 | grep Target: | cut -d' ' -f2)
25-
# TODO: get built-in include paths from compiler
26-
$CXX -x c++ -v -c - < /dev/null
27-
2823
defs=
2924
defs="$defs -D__GNUC__"
3025
defs="$defs -D__STDC__"
3126
defs="$defs -D__STDC_HOSTED__"
3227
defs="$defs -D__CHAR_BIT__=8"
3328
defs="$defs -D__x86_64__"
34-
defs="$defs -D__INTPTR_TYPE__='long int'" # MSYS
3529
defs="$defs -D__has_builtin(x)=(1)"
3630
defs="$defs -D__has_cpp_attribute(x)=(1)"
3731
defs="$defs -D__has_attribute(x)=(1)"
3832

39-
find /usr -name cctype
40-
find /usr/include -name cctype
41-
find /usr -name stddef.h
42-
find /usr/include -name stddef.h
43-
find /usr -name c++config.h
44-
cat /usr/include/sys/_intsup.h
45-
# some required include paths might differ per distro
4633
inc=
47-
inc="$inc -I/usr/include"
48-
if [ -d "/usr/include/linux" ]; then # Manjaro, ubuntu
49-
inc="$inc -I/usr/include/linux"
50-
fi
51-
if [ -d "/usr/include/c++/$gcc_ver" ]; then # Manjaro, ubuntu
52-
inc="$inc -I/usr/include/c++/$gcc_ver"
53-
fi
54-
if [ -d "/usr/include/c++/$gcc_ver/$gcc_target" ]; then
55-
inc="$inc -I/usr/include/c++/$gcc_ver/$gcc_target"
56-
fi
57-
if [ -d "/usr/lib/gcc/$gcc_target/$gcc_ver/include" ]; then
58-
inc="$inc -I/usr/lib/gcc/$gcc_target/$gcc_ver/include"
59-
fi
60-
if [ -d "/usr/lib/gcc/$gcc_target/$gcc_ver/include/c++" ]; then # MSYS
61-
inc="$inc -I/usr/lib/gcc/$gcc_target/$gcc_ver/include/c++"
62-
fi
63-
if [ -d "/usr/lib/gcc/$gcc_target/$gcc_ver/include/c++/$gcc_target" ]; then # MSYS
64-
inc="$inc -I/usr/lib/gcc/$gcc_target/$gcc_ver/include/c++/$gcc_target"
65-
fi
66-
if [ -d "/usr/include/$gcc_target" ]; then
67-
inc="$inc -I/usr/include/$gcc_target"
68-
inc="$inc -I/usr/include/$gcc_target/c++/$gcc_ver"
69-
fi
34+
while read line
35+
do
36+
inc="$inc -I$line"
37+
done <<< "$($CXX -x c++ -v -c - 2>&1 < /dev/null | grep -e'^ [/A-Z]' | grep -v /cc1plus | grep -v /as)"
7038
elif [ "$cxx_type" = "clang" ]; then
71-
clang_ver=$($CXX -dumpversion)
72-
clang_ver=${clang_ver%%.*}
73-
clang_target=$($CXX -v 2>&1 | grep Target: | cut -d' ' -f2)
74-
# TODO: get built-in include paths from compiler
75-
$CXX -x c++ -v -c - < /dev/null
76-
7739
defs=
7840
defs="$defs -D__BYTE_ORDER__"
7941
defs="$defs -D__linux__"
8042
defs="$defs -D__x86_64__"
8143
defs="$defs -D__SIZEOF_SIZE_T__=8"
44+
defs="$defs -D__STDC_HOSTED__"
45+
defs="$defs -D__CHAR_BIT__=8"
8246
defs="$defs -D__has_feature(x)=(1)"
8347
defs="$defs -D__has_extension(x)=(1)"
8448
defs="$defs -D__has_attribute(x)=(0)"
8549
defs="$defs -D__has_cpp_attribute(x)=(0)"
8650
defs="$defs -D__has_include_next(x)=(0)"
87-
defs="$defs -D__building_module(x)=(0)" # MSYS
51+
defs="$defs -D__building_module(x)=(0)"
52+
defs="$defs -D__has_builtin(x)=(1)"
8853

89-
find /usr -name cctype
90-
find /usr/include -name cctype
91-
find /usr -name stddef.h
92-
find /usr/include -name stddef.h
93-
# some required include paths might differ per distro
54+
# TODO: use libc++
9455
inc=
95-
if [ -d "/usr/include/c++/v1" ]; then
96-
inc="$inc -I/usr/include/c++/v1"
97-
fi
98-
if [ -d "/usr/lib/llvm-$clang_ver/include/c++/v1" ]; then
99-
inc="$inc -I/usr/lib/llvm-$clang_ver/include/c++/v1"
100-
fi
101-
inc="$inc -I/usr/include"
102-
if [ -d "/usr/lib/clang/$clang_ver/include" ]; then # Manjaro, ubuntu
103-
inc="$inc -I/usr/lib/clang/$clang_ver/include"
104-
fi
105-
if [ -d "/usr/include/$clang_target" ]; then
106-
inc="$inc -I/usr/include/$clang_target"
107-
fi
56+
while read line
57+
do
58+
inc="$inc -I$line"
59+
done <<< "$($CXX -x c++ -v -c - 2>&1 < /dev/null | grep -e'^ [/A-Z]')"
10860
elif [ "$cxx_type" = "Apple" ]; then
10961
appleclang_ver=$($CXX -dumpversion)
11062
appleclang_ver=${appleclang_ver%%.*}

0 commit comments

Comments
 (0)