ObjFW  Diff

Differences From Artifact [11d1ec3370]:

To Artifact [51a84fd78e]:


20
21
22
23
24
25
26




















































27
28
29
30
31
32
33
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85







+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+







AC_ARG_WITH(ixemul,
	AS_HELP_STRING([--with-ixemul], [build with ixemul]))

dnl Used to disable checking for -pedantic on some platforms where it's broken
check_pedantic="yes"

case "$host" in
	m68k-*-amigaos*)
		OBJCFLAGS="$OBJCFLAGS -noixemul"
		LDFLAGS="$LDFLAGS -noixemul"

		enable_shared="no"
		enable_threads="no"
		enable_sockets="no"
		enable_files="yes"	# Required for reading ENV:
		ac_cv_snprintf_useful_ret="yes"

		AC_DEFINE(ULLONG_MAX, 0xFFFFFFFFFFFFFFFFULL,
			[Maximum value for unsigned long long])
		AC_DEFINE(LLONG_MAX, 0x7FFFFFFFFFFFFFFFLL,
			[Maximum value for long long])
		AC_DEFINE(LLONG_MIN, [(-0x7FFFFFFFFFFFFFFFLL - 1)],
			[Minimum value for long long])

		AC_DEFINE(PRId8, "hhd", [Format string for 8-bit as decimal])
		AC_DEFINE(PRId16, "hd", [Format string for 16-bit as decimal])
		AC_DEFINE(PRId32, "d", [Format string for 32-bit as decimal])
		AC_DEFINE(PRId64, "lld", [Format string for 64-bit as decimal])
		AC_DEFINE(PRIi8, "hhi", [Format string for 8-bit as integer])
		AC_DEFINE(PRIi16, "hi", [Format string for 16-bit as integer])
		AC_DEFINE(PRIi32, "i", [Format string for 32-bit as integer])
		AC_DEFINE(PRIi64, "lli", [Format string for 64-bit as integer])
		AC_DEFINE(PRIo8, "hho", [Format string for 8-bit as octal])
		AC_DEFINE(PRIo16, "ho", [Format string for 16-bit as octal])
		AC_DEFINE(PRIo32, "o", [Format string for 32-bit as octal])
		AC_DEFINE(PRIo64, "llo", [Format string for 64-bit as octal])
		AC_DEFINE(PRIu8, "hhu", [Format string for 8-bit as unsigned])
		AC_DEFINE(PRIu16, "hu", [Format string for 16-bit as unsigned])
		AC_DEFINE(PRIu32, "u", [Format string for 32-bit as unsigned])
		AC_DEFINE(PRIu64, "llu", [Format string for 64-bit as unsigned])
		AC_DEFINE(PRIx8, "hhx",
			[Format string for 8-bit as lowercase hex])
		AC_DEFINE(PRIx16, "hx",
			[Format string for 16-bit as lowercase hex])
		AC_DEFINE(PRIx32, "x",
			[Format string for 32-bit as lowercase hex])
		AC_DEFINE(PRIx64, "llx",
			[Format string for 64-bit as lowercase hex])
		AC_DEFINE(PRIX8, "hhX",
			[Format string for 8-bit as uppercase hex])
		AC_DEFINE(PRIX16, "hX",
			[Format string for 16-bit as uppercase hex])
		AC_DEFINE(PRIX32, "X",
			[Format string for 32-bit as uppercase hex])
		AC_DEFINE(PRIX64, "llX",
			[Format string for 64-bit as uppercase hex])

		AC_SUBST(NOIXEMUL, -noixemul)
		;;
	powerpc-*-amigaos*)
		enable_shared="no"
		enable_threads="no"
		;;
	*-morphos*)
		AS_IF([test x"$with_ixemul" != x"yes"], [
			OBJCFLAGS="$OBJCFLAGS -noixemul"
207
208
209
210
211
212
213








214
215
216
217
218
219
220
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280







+
+
+
+
+
+
+
+







	[OBJCFLAGS="$OBJCFLAGS -Wundeclared-selector"])
AX_CHECK_COMPILER_FLAGS([-Wsemicolon-before-method-body -Werror],
	[OBJCFLAGS="$OBJCFLAGS -Wsemicolon-before-method-body"])
AX_CHECK_COMPILER_FLAGS([-Wobjc-missing-property-synthesis -Werror],
	[OBJCFLAGS="$OBJCFLAGS -Wobjc-missing-property-synthesis"])
AX_CHECK_COMPILER_FLAGS([-Wmissing-method-return-type -Werror],
	[OBJCFLAGS="$OBJCFLAGS -Wmissing-method-return-type"])

case "$host" in
	m68k-*-amigaos*)
		dnl The inline headers generate code that triggers
		dnl -Wpointer-sign.
		OBJCFLAGS="$OBJCFLAGS -Wno-pointer-sign"
		;;
esac

AC_MSG_CHECKING(whether Objective C compiler supports properties)
AC_TRY_COMPILE([
	#ifdef __has_attribute
	# if __has_attribute(objc_root_class)
	__attribute__((__objc_root_class__))
	# endif
594
595
596
597
598
599
600



601
602

603
604
605
606
607
608
609
654
655
656
657
658
659
660
661
662
663
664

665
666
667
668
669
670
671
672







+
+
+

-
+







], [
	AC_MSG_RESULT(yes)
], [
	AC_MSG_RESULT(no)
	AC_DEFINE(UINTPTR_MAX, [(~(uintptr_t)0)], [Maximum value for uintptr_t])
])

AC_CHECK_HEADER(inttypes.h,
	[AC_DEFINE(OF_HAVE_INTTYPES_H, 1, [Whether we have inttypes.h])])

AC_CHECK_HEADER(sys/types.h,
	[AC_DEFINE(OF_HAVE_SYS_TYPES_H, 1, [Whether we have <sys/types.h>])])
	[AC_DEFINE(OF_HAVE_SYS_TYPES_H, 1, [Whether we have sys/types.h])])

AC_CHECK_TYPE(max_align_t,
	[AC_DEFINE(OF_HAVE_MAX_ALIGN_T, 1, [Whether we have max_align_t])])

AC_CHECK_HEADER(stdnoreturn.h,
	[AC_DEFINE(OF_HAVE_STDNORETURN_H, 1, [Whether we have stdnoreturn.h])])

1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311

1312
1313
1314
1315
1316
1317
1318
1363
1364
1365
1366
1367
1368
1369

1370
1371
1372

1373
1374
1375
1376
1377
1378
1379
1380







-



-
+







])

AC_DEFUN([CHECK_BUILTIN_BSWAP], [
	AC_MSG_CHECKING(for __builtin_bswap$1)
	AC_TRY_LINK([
		#include <stdint.h>
		#include <stdio.h>
		#include <inttypes.h>
		#include <errno.h>
	], [
		uint$1_t i = errno;
		printf("%" PRIu$1, __builtin_bswap$1(i));
		printf("%d", (int)__builtin_bswap$1(i));
	], [
		AC_MSG_RESULT(yes)
		AC_DEFINE(OF_HAVE_BUILTIN_BSWAP$1, 1,
			[Whether we have __builtin_bswap$1])
	], [
		AC_MSG_RESULT(no)
	])