url: Cleanups and compiler warning fixes.
diff --git a/src/misc/SDL_sysurl.h b/src/misc/SDL_sysurl.h
new file mode 100644
index 0000000..d10e027
--- /dev/null
+++ b/src/misc/SDL_sysurl.h
@@ -0,0 +1,36 @@
+/*
+  Simple DirectMedia Layer
+  Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "../SDL_internal.h"
+#include "SDL_misc.h"
+#include "SDL_error.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int SDL_SYS_OpenURL(const char *url);
+
+#ifdef __cplusplus
+}
+#endif
+
+/* vi: set ts=4 sw=4 expandtab: */
diff --git a/src/misc/SDL_url.c b/src/misc/SDL_url.c
index 6fcda8f..fe60766 100644
--- a/src/misc/SDL_url.c
+++ b/src/misc/SDL_url.c
@@ -19,11 +19,9 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../SDL_internal.h"
-#include "SDL_misc.h"
-#include "SDL_error.h"
+#include "SDL_sysurl.h"
 
-int SDL_SYS_OpenURL(const char *url);
+extern int SDL_SYS_OpenURL(const char *url);
 
 int
 SDL_OpenURL(const char *url)
diff --git a/src/misc/android/SDL_sysurl.c b/src/misc/android/SDL_sysurl.c
index c7f1d2a..37ea689 100644
--- a/src/misc/android/SDL_sysurl.c
+++ b/src/misc/android/SDL_sysurl.c
@@ -19,7 +19,7 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
+#include "../SDL_sysurl.h"
 #include "../../core/android/SDL_android.h"
 
 int
diff --git a/src/misc/dummy/SDL_sysurl.c b/src/misc/dummy/SDL_sysurl.c
index 9d3b67a..201f56b 100644
--- a/src/misc/dummy/SDL_sysurl.c
+++ b/src/misc/dummy/SDL_sysurl.c
@@ -19,8 +19,7 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
-#include "SDL_error.h"
+#include "../SDL_sysurl.h"
 
 int
 SDL_SYS_OpenURL(const char *url)
diff --git a/src/misc/haiku/SDL_sysurl.cc b/src/misc/haiku/SDL_sysurl.cc
index 72039a8..cd0df1c 100644
--- a/src/misc/haiku/SDL_sysurl.cc
+++ b/src/misc/haiku/SDL_sysurl.cc
@@ -19,12 +19,9 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
-#include "SDL_error.h"
+#include "../SDL_sysurl.h"
 #include <Url.h>
 
-extern "C" { int SDL_SYS_OpenURL(const char *url); }
-
 int
 SDL_SYS_OpenURL(const char *url)
 {
diff --git a/src/misc/ios/SDL_sysurl.m b/src/misc/ios/SDL_sysurl.m
index 73b9fee..44111a8 100644
--- a/src/misc/ios/SDL_sysurl.m
+++ b/src/misc/ios/SDL_sysurl.m
@@ -19,7 +19,7 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
+#include "../SDL_sysurl.h"
 
 int
 SDL_SYS_OpenURL(const char *url)
diff --git a/src/misc/macosx/SDL_sysurl.m b/src/misc/macosx/SDL_sysurl.m
index 80247f3..c896d99 100644
--- a/src/misc/macosx/SDL_sysurl.m
+++ b/src/misc/macosx/SDL_sysurl.m
@@ -19,7 +19,7 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
+#include "../SDL_sysurl.h"
 
 #import <Cocoa/Cocoa.h>
 
diff --git a/src/misc/unix/SDL_sysurl.c b/src/misc/unix/SDL_sysurl.c
index df00e93..1fb7f32 100644
--- a/src/misc/unix/SDL_sysurl.c
+++ b/src/misc/unix/SDL_sysurl.c
@@ -19,8 +19,7 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
-#include "SDL_error.h"
+#include "../SDL_sysurl.h"
 
 #include <stdio.h>
 #include <stdlib.h>
diff --git a/src/misc/windows/SDL_sysurl.c b/src/misc/windows/SDL_sysurl.c
index ad77b77..33eefa1 100644
--- a/src/misc/windows/SDL_sysurl.c
+++ b/src/misc/windows/SDL_sysurl.c
@@ -19,9 +19,8 @@
   3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "../../SDL_internal.h"
+#include "../SDL_sysurl.h"
 #include "../../core/windows/SDL_windows.h"
-#include "SDL_error.h"
 
 #include <shellapi.h>