ObjFW  Check-in [e0f421b523]

Overview
Comment:configure: Check for dladdr().
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: e0f421b5232ca4c581f5b11931211a0c73a013a4518e04897141c1721ac73aa1
User & Date: js on 2013-06-30 19:13:48
Other Links: manifest | tags
Context
2013-06-30
23:25
Document of_std{in,out,err} in OFStdIOStream. check-in: 44adc37c7b user: js tags: trunk
19:13
configure: Check for dladdr(). check-in: e0f421b523 user: js tags: trunk
18:30
Rename -[initWithBlock:]. check-in: a3639589d3 user: js tags: trunk
Changes

Modified configure.ac from [063032f1d9] to [28f8337c8d].

495
496
497
498
499
500
501

502
503
504
505
506
507
508
	AC_CHECK_FUNC(random, [
		AC_DEFINE(HAVE_RANDOM, 1, [Whether we have random()])
	])
])

AC_CHECK_LIB(dl, dlopen, LIBS="$LIBS -ldl")
AC_CHECK_HEADERS(dlfcn.h)


AC_ARG_ENABLE(threads,
	AS_HELP_STRING([--disable-threads], [disable thread support]))
AS_IF([test x"$enable_threads" != x"no"], [
	case "$host_os" in
	mingw*)
		AC_MSG_CHECKING(for threads)







>







495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
	AC_CHECK_FUNC(random, [
		AC_DEFINE(HAVE_RANDOM, 1, [Whether we have random()])
	])
])

AC_CHECK_LIB(dl, dlopen, LIBS="$LIBS -ldl")
AC_CHECK_HEADERS(dlfcn.h)
AC_CHECK_FUNCS(dladdr)

AC_ARG_ENABLE(threads,
	AS_HELP_STRING([--disable-threads], [disable thread support]))
AS_IF([test x"$enable_threads" != x"no"], [
	case "$host_os" in
	mingw*)
		AC_MSG_CHECKING(for threads)

Modified src/exceptions/OFException.m from [e70ae26647] to [ab1bc6e29e].

97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
- (OFArray*)backtrace
{
	OFMutableArray *backtrace = [OFMutableArray array];
	void *pool = objc_autoreleasePoolPush();
	uint_fast8_t i;

	for (i = 0; i < OF_BACKTRACE_SIZE && _backtrace[i] != NULL; i++) {
#ifdef HAVE_DLFCN_H
		Dl_info info;

		if (dladdr(_backtrace[i], &info)) {
			ptrdiff_t offset = (char*)_backtrace[i] -
			    (char*)info.dli_saddr;

			if (info.dli_sname == NULL)







|







97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
- (OFArray*)backtrace
{
	OFMutableArray *backtrace = [OFMutableArray array];
	void *pool = objc_autoreleasePoolPush();
	uint_fast8_t i;

	for (i = 0; i < OF_BACKTRACE_SIZE && _backtrace[i] != NULL; i++) {
#ifdef HAVE_DLADDR
		Dl_info info;

		if (dladdr(_backtrace[i], &info)) {
			ptrdiff_t offset = (char*)_backtrace[i] -
			    (char*)info.dli_saddr;

			if (info.dli_sname == NULL)