ObjFW  Check-in [7ab180e9b6]

Overview
Comment:Remove support for ixemul on MorphOS

ixemul is quite buggy and the native support we have for MorphOS is far
superior.

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 7ab180e9b6a73ffb689e3631ae0085a2a2b51643813e12c4a3bfc4209e2e2c14
User & Date: js on 2020-12-18 10:52:06
Other Links: manifest | tags
Context
2020-12-18
10:57
configure: Remove unused substitution check-in: a19a19f2ce user: js tags: trunk
10:52
Remove support for ixemul on MorphOS check-in: 7ab180e9b6 user: js tags: trunk
10:41
Fix deprecation warnings with autoconf 2.70 check-in: 28eda87705 user: js tags: trunk
Changes

Modified configure.ac from [6622324a1c] to [2aa5aa9da1].

15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
15
16
17
18
19
20
21



22
23
24
25
26
27
28







-
-
-







	])
done

BUILDSYS_INIT

AC_CANONICAL_HOST

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
	arm-*-riscos*)
		AS_IF([test x"$OBJCFLAGS" = x""], [
			OBJCFLAGS="-O2 -g"
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90











91
92
93
94
95
96
97
98
99
100









101
102

103
104
105
106
107
108
109
110
111
112
71
72
73
74
75
76
77










78
79
80
81
82
83
84
85
86
87
88
89









90
91
92
93
94
95
96
97
98
99

100



101
102
103
104
105
106
107







-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+

-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+

-
+
-
-
-








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

		AC_SUBST(LIBBASES_M, libbases.m)
		;;
	*-morphos*)
		AS_IF([test x"$with_ixemul" != x"yes"], [
			AS_IF([test x"$OBJCFLAGS" = x""], [
				OBJCFLAGS="-O2 -g"
			])
			OBJCFLAGS="$OBJCFLAGS -noixemul"
			OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS -noixemul"
			LDFLAGS="$LDFLAGS -noixemul"
			enable_files="yes"	# Required for reading ENV:
			supports_amiga_lib="yes"
			check_pedantic="no"	# Breaks generated inlines
		AS_IF([test x"$OBJCFLAGS" = x""], [
			OBJCFLAGS="-O2 -g"
		])
		OBJCFLAGS="$OBJCFLAGS -noixemul"
		OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS -noixemul"
		LDFLAGS="$LDFLAGS -noixemul"

		enable_files="yes"	# Required for reading ENV:
		enable_shared="no"
		supports_amiga_lib="yes"
		check_pedantic="no"	# Breaks generated inlines

			AS_IF([test x"$enable_amiga_lib" != x"no"], [
				AC_SUBST(OBJFWRT_AMIGA_LIB, objfwrt.library)
				AC_SUBST(CVINCLUDE_INLINE_H, inline.h)
				t="-mresident32 -ffreestanding -noixemul"
				AC_SUBST(AMIGA_LIB_CFLAGS, $t)
				t="-mresident32 -nostartfiles -nodefaultlibs"
				t="$t -noixemul -lc"
				AC_SUBST(AMIGA_LIB_LDFLAGS, $t)
			])
		AS_IF([test x"$enable_amiga_lib" != x"no"], [
			AC_SUBST(OBJFWRT_AMIGA_LIB, objfwrt.library)
			AC_SUBST(CVINCLUDE_INLINE_H, inline.h)
			t="-mresident32 -ffreestanding -noixemul"
			AC_SUBST(AMIGA_LIB_CFLAGS, $t)
			t="-mresident32 -nostartfiles -nodefaultlibs"
			t="$t -noixemul -lc"
			AC_SUBST(AMIGA_LIB_LDFLAGS, $t)
		])

			AC_SUBST(LIBBASES_M, libbases.m)
		AC_SUBST(LIBBASES_M, libbases.m)
		])

		enable_shared="no"
		;;
	*-msdosdjgpp*)
		enable_shared="no"
		enable_threads="no"
		enable_sockets="no"
		;;
	*-*-mingw*)

Modified src/platform.h from [7c77ac8783] to [e661b43c0f].

125
126
127
128
129
130
131
132
133
134


135
136
137
138
139
140
141
142
143
144
125
126
127
128
129
130
131



132
133



134
135
136
137
138
139
140







-
-
-
+
+
-
-
-







#elif defined(__ANDROID__)
# define OF_ANDROID
#elif defined(__HAIKU__)
# define OF_HAIKU
#elif defined(_AIX)
# define OF_AIX
#elif defined(__MORPHOS__)
# ifndef __ixemul__
#  define OF_MORPHOS
#  define OF_AMIGAOS
# define OF_MORPHOS
# define OF_AMIGAOS
# else
#  define OF_MORPHOS_IXEMUL
# endif
#elif defined(__amigaos4__)
# define OF_AMIGAOS4
# define OF_AMIGAOS
#elif defined(__amigaos__)
# define OF_AMIGAOS_M68K
# define OF_AMIGAOS
#elif defined(__sun__)

Modified src/socket.h from [fc5416a7db] to [4c95dee7a0].

80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
80
81
82
83
84
85
86




87
88
89
90
91
92
93







-
-
-
-








#ifdef OF_MORPHOS
typedef long socklen_t;
typedef u_char sa_family_t;
typedef u_short in_port_t;
#endif

#ifdef OF_MORPHOS_IXEMUL
typedef int socklen_t;
#endif

/**
 * @brief A socket address family.
 */
typedef enum {
	/** An unknown address family. */
	OF_SOCKET_ADDRESS_FAMILY_UNKNOWN,
	/** IPv4 */

Modified src/socket_helpers.h from [c2b374f2db] to [518711966a].

69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
69
70
71
72
73
74
75




76
77
78
79
80
81
82







-
-
-
-







# ifdef OF_MORPHOS
typedef uint32_t in_addr_t;
# endif
#elif !defined(OF_WINDOWS) && !defined(OF_WII)
# define closesocket(sock) close(sock)
#endif

#ifdef OF_MORPHOS_IXEMUL
typedef uint32_t in_addr_t;
#endif

#ifdef OF_WII
# define accept(sock, addr, addrlen) net_accept(sock, addr, addrlen)
# define bind(sock, addr, addrlen) net_bind(sock, addr, addrlen)
# define closesocket(sock) net_close(sock)
# define connect(sock, addr, addrlen) \
    net_connect(sock, (struct sockaddr *)addr, addrlen)
# define fcntl(fd, cmd, flags) net_fcntl(fd, cmd, flags)