File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -42,9 +42,9 @@ CXXFLAGS_OPTIM_SPEED="$CFLAGS_OPTIM_SPEED"
4242CFLAGS_OPTIM_SIZE="-Os -fomit-frame-pointer"
4343CXXFLAGS_OPTIM_SIZE="$CFLAGS_OPTIM_SIZE"
4444# debug settings
45- CFLAGS_OPTIM_DEBUG="-ggdb -Og"
45+ CFLAGS_OPTIM_DEBUG="-ggdb -Og ${DEBUG_SANITIZER_CFLAGS} "
4646CXXFLAGS_OPTIM_DEBUG="$CFLAGS_OPTIM_DEBUG"
47- LDFLAGS_OPTIM_DEBUG="-ggdb"
47+ LDFLAGS_OPTIM_DEBUG="-ggdb ${DEBUG_SANITIZER_LDFLAGS} "
4848# split debug settings (requires gold)
4949CFLAGS_OPTIM_DEBUG_SPLIT="-gdwarf-4 -gsplit-dwarf -Og"
5050CXXFLAGS_OPTIM_DEBUG_SPLIT="$CFLAGS_OPTIM_DEBUG_SPLIT"
Original file line number Diff line number Diff line change @@ -149,6 +149,24 @@ if [ -z "${CONFIG_SHELL}" ] && [ -x "/bin/dash" ]; then
149149 export CONFIG_SHELL="/bin/dash"
150150fi
151151
152+ # enable gcc sanitizer support in debug builds
153+ # DEBUG_SANITIZER_FLAGS sets both CFLAGS and LDFLAGS
154+ if [ "${DEBUG:-no}" != "no" ]; then
155+ if [ -n "${DEBUG_SANITIZER_FLAGS}" ]; then
156+ DEBUG_SANITIZER_CFLAGS="${DEBUG_SANITIZER_FLAGS}"
157+ DEBUG_SANITIZER_LDFLAGS="${DEBUG_SANITIZER_FLAGS}"
158+ fi
159+ if [ -n "${DEBUG_SANITIZER_CFLAGS}" ] || [ -n "${DEBUG_SANITIZER_LDFLAGS}" ]; then
160+ SANITIZER_SUPPORT="yes"
161+ else
162+ SANITIZER_SUPPORT="no"
163+ fi
164+ else
165+ SANITIZER_SUPPORT="no"
166+ DEBUG_SANITIZER_CFLAGS=""
167+ DEBUG_SANITIZER_LDFLAGS=""
168+ fi
169+
152170check_config
153171
154172. config/graphic
Original file line number Diff line number Diff line change @@ -168,6 +168,14 @@ makeinstall_target() {
168168 mkdir -p ${INSTALL}/usr/lib
169169 cp -P ${PKG_BUILD}/.${HOST_NAME}/${TARGET_NAME}/libgcc/libgcc_s.so* ${INSTALL}/usr/lib
170170 cp -P ${PKG_BUILD}/.${HOST_NAME}/${TARGET_NAME}/libstdc++-v3/src/.libs/libstdc++.so* ${INSTALL}/usr/lib
171+ if [ "${SANITIZER_SUPPORT}" = "yes" ]; then
172+ for f in ${PKG_BUILD}/.${HOST_NAME}/${TARGET_NAME}/libsanitizer/*/.libs/*.so*; do
173+ # exclude so.0.0.0T files
174+ if [[ ! "${f}" =~ T$ ]]; then
175+ cp -P "${f}" ${INSTALL}/usr/lib
176+ fi
177+ done
178+ fi
171179 if [ "${OPTS_LIBATOMIC}" = "--enable-libatomic" ]; then
172180 cp -P ${PKG_BUILD}/.${HOST_NAME}/${TARGET_NAME}/libatomic/.libs/libatomic.so* ${INSTALL}/usr/lib
173181 fi
You can’t perform that action at this time.
0 commit comments