This API is dumb. uname(3) exists, feel free to use it, but ideally write to the interface not to the OS. There are a couple of drivers using this API, they could all reasonably just not.
This also removes the OS name from the loader subdirectory path search. Having /usr/lib/xorg shared across OSes is a non-goal here. Signed-off-by: Adam Jackson <a...@redhat.com> --- hw/xfree86/common/xf86.h | 2 -- hw/xfree86/common/xf86Helper.c | 4 --- hw/xfree86/common/xf86Module.h | 2 -- hw/xfree86/loader/Makefile.am | 3 +- hw/xfree86/loader/loadmod.c | 14 +------- hw/xfree86/loader/os.c | 72 ------------------------------------------ 6 files changed, 2 insertions(+), 95 deletions(-) delete mode 100644 hw/xfree86/loader/os.c diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h index f724688..828bff1 100644 --- a/hw/xfree86/common/xf86.h +++ b/hw/xfree86/common/xf86.h @@ -343,8 +343,6 @@ xf86SetSilkenMouse(ScreenPtr pScreen); extern _X_EXPORT void * xf86FindXvOptions(ScrnInfoPtr pScrn, int adapt_index, const char *port_name, const char **adaptor_name, void **adaptor_options); -extern _X_EXPORT void -xf86GetOS(const char **name, int *major, int *minor, int *teeny); extern _X_EXPORT ScrnInfoPtr xf86ConfigFbEntity(ScrnInfoPtr pScrn, int scrnFlag, int entityIndex, EntityProc init, diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c index 9388436..f48af75 100644 --- a/hw/xfree86/common/xf86Helper.c +++ b/hw/xfree86/common/xf86Helper.c @@ -1752,10 +1752,6 @@ xf86FindXvOptions(ScrnInfoPtr pScrn, int adaptor_index, const char *port_name, return NULL; } -/* Rather than duplicate loader's get OS function, just include it directly */ -#define LoaderGetOS xf86GetOS -#include "loader/os.c" - static void xf86ConfigFbEntityInactive(EntityInfoPtr pEnt, EntityProc init, EntityProc enter, EntityProc leave, void *private) diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h index e0212cf..cd4227a 100644 --- a/hw/xfree86/common/xf86Module.h +++ b/hw/xfree86/common/xf86Module.h @@ -176,8 +176,6 @@ extern _X_EXPORT void *LoaderSymbol(const char *); extern _X_EXPORT const char **LoaderListDirs(const char **, const char **); extern _X_EXPORT void LoaderFreeDirList(char **); extern _X_EXPORT void LoaderErrorMsg(const char *, const char *, int, int); -extern _X_EXPORT void LoaderGetOS(const char **name, int *major, int *minor, - int *teeny); extern _X_EXPORT Bool LoaderShouldIgnoreABI(void); extern _X_EXPORT int LoaderGetABIVersion(const char *abiclass); diff --git a/hw/xfree86/loader/Makefile.am b/hw/xfree86/loader/Makefile.am index 9218cab..3529a7a 100644 --- a/hw/xfree86/loader/Makefile.am +++ b/hw/xfree86/loader/Makefile.am @@ -14,7 +14,6 @@ EXTRA_DIST = \ libloader_la_SOURCES = \ loader.c \ loaderProcs.h \ - loadmod.c \ - os.c + loadmod.c libloader_la_LIBADD = $(DLOPEN_LIBS) diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c index 03c9966..95a37fc 100644 --- a/hw/xfree86/loader/loadmod.c +++ b/hw/xfree86/loader/loadmod.c @@ -269,9 +269,7 @@ InitSubdirs(const char **subdirlist) const char **tmp_subdirlist = NULL; char **subdirs = NULL; const char **s, **stmp = NULL; - const char *osname; - const char *slash; - int oslen = 0, len; + int len; Bool indefault; if (subdirlist == NULL) { @@ -282,9 +280,6 @@ InitSubdirs(const char **subdirlist) subdirlist[1] = NULL; } - LoaderGetOS(&osname, NULL, NULL, NULL); - oslen = strlen(osname); - { /* Count number of entries and check for invalid paths */ for (i = 0, s = subdirlist; *s; i++, s++) { @@ -323,12 +318,8 @@ InitSubdirs(const char **subdirlist) } len = strlen(*s); if (**s && (*s)[len - 1] != '/') { - slash = "/"; len++; } - else - slash = ""; - len += oslen + 2; if (!(subdirs[i] = malloc(len))) { while (--i >= 0) free(subdirs[i]); @@ -336,9 +327,6 @@ InitSubdirs(const char **subdirlist) free(tmp_subdirlist); return NULL; } - /* tack on the OS name */ - sprintf(subdirs[i], "%s%s%s/", *s, slash, osname); - i++; /* path as given */ subdirs[i] = strdup(*s); i++; diff --git a/hw/xfree86/loader/os.c b/hw/xfree86/loader/os.c deleted file mode 100644 index 8d03721..0000000 --- a/hw/xfree86/loader/os.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 1999-2002 by The XFree86 Project, Inc. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the name of the copyright holder(s) - * and author(s) shall not be used in advertising or otherwise to promote - * the sale, use or other dealings in this Software without prior written - * authorization from the copyright holder(s) and author(s). - */ - -#ifdef HAVE_XORG_CONFIG_H -#include <xorg-config.h> -#endif - -#include "loaderProcs.h" - -/* - * OSNAME is a standard form of the OS name that may be used by the - * loader and by OS-specific modules. OSNAME here is different from what's in - * dix-config.h - */ - -#undef OSNAME -#if defined(__linux__) -#define OSNAME "linux" -#elif defined(__FreeBSD__) -#define OSNAME "freebsd" -#elif defined(__DragonFly__) -#define OSNAME "dragonfly" -#elif defined(__NetBSD__) -#define OSNAME "netbsd" -#elif defined(__OpenBSD__) -#define OSNAME "openbsd" -#elif defined(__GNU__) -#define OSNAME "hurd" -#elif defined(SVR4) && defined(__sun) -#define OSNAME "solaris" -#elif defined(SVR5) -#define OSNAME "svr5" -#elif defined(SVR4) -#define OSNAME "svr4" -#else -#define OSNAME "unknown" -#endif - -/* Return the OS name, and run-time OS version */ - -void -LoaderGetOS(const char **name, int *major, int *minor, int *teeny) -{ - if (name) - *name = OSNAME; - - /* reporting runtime versions isn't supported yet */ -} -- 2.9.3 _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel