Xnamespace: namespace extension skeleton
Add tiny skeleton for the namespace extension. Disabled by default, can be enabled via +extension arg, but doesn't actually do something yet. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
parent
c3f042de23
commit
4379f7cc87
|
@ -0,0 +1,8 @@
|
|||
libxserver_namespace = static_library(
|
||||
'libxserver_namespace',
|
||||
[
|
||||
'namespace.c',
|
||||
],
|
||||
include_directories: inc,
|
||||
dependencies: common_dep,
|
||||
)
|
|
@ -0,0 +1,16 @@
|
|||
#include <dix-config.h>
|
||||
|
||||
#include <X11/Xmd.h>
|
||||
|
||||
#include "include/os.h"
|
||||
#include "miext/extinit_priv.h"
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
Bool noNamespaceExtension = TRUE;
|
||||
|
||||
void
|
||||
NamespaceExtensionInit(void)
|
||||
{
|
||||
XNS_LOG("initializing namespace extension ...\n");
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
#ifndef __XSERVER_NAMESPACE_H
|
||||
#define __XSERVER_NAMESPACE_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include <X11/Xmd.h>
|
||||
|
||||
#define XNS_LOG(...) do { printf("XNS "); printf(__VA_ARGS__); } while (0)
|
||||
|
||||
static inline Bool streq(const char *a, const char *b)
|
||||
{
|
||||
if (!a && !b)
|
||||
return TRUE;
|
||||
if (!a || !b)
|
||||
return FALSE;
|
||||
return (strcmp(a,b) == 0);
|
||||
}
|
||||
|
||||
#endif /* __XSERVER_NAMESPACE_H */
|
|
@ -228,6 +228,7 @@ conf_data.set('SHAPE', '1')
|
|||
conf_data.set('XACE', build_xace ? '1' : false)
|
||||
conf_data.set('XCMISC', '1')
|
||||
conf_data.set('XCSECURITY', build_xsecurity ? '1' : false)
|
||||
conf_data.set('CONFIG_NAMESPACE', build_namespace ? '1' : false)
|
||||
conf_data.set('XDMCP', xdmcp_dep.found() ? '1' : false)
|
||||
conf_data.set('XF86BIGFONT', build_xf86bigfont ? '1' : false)
|
||||
conf_data.set('XF86DRI', build_dri1 ? '1' : false)
|
||||
|
@ -245,9 +246,9 @@ conf_data.set('XvExtension', build_xv ? '1' : false)
|
|||
conf_data.set('XvMCExtension', build_xvmc ? '1' : false)
|
||||
|
||||
# needed by several extensions
|
||||
build_registry_resource = (build_xselinux or build_res)
|
||||
build_registry_resource = (build_xselinux or build_res or build_namespace)
|
||||
conf_data.set('X_REGISTRY_RESOURCE', build_registry_resource ? '1' : false)
|
||||
build_registry_request = (build_xselinux or build_xsecurity or with_dtrace)
|
||||
build_registry_request = (build_xselinux or build_xsecurity or with_dtrace or build_namespace)
|
||||
conf_data.set('X_REGISTRY_REQUEST', build_registry_request ? '1' : false)
|
||||
|
||||
conf_data.set('HAVE_SHA1_IN_' + sha1.to_upper(), '1', description: 'Use @0@ SHA1 functions'.format(sha1))
|
||||
|
|
12
meson.build
12
meson.build
|
@ -568,6 +568,13 @@ if build_xsecurity
|
|||
endif
|
||||
endif
|
||||
|
||||
build_namespace = get_option('namespace')
|
||||
if build_namespace
|
||||
if not build_xace
|
||||
error('cannot build Container extension without X-ACE')
|
||||
endif
|
||||
endif
|
||||
|
||||
build_xv = get_option('xv')
|
||||
build_xvmc = get_option('xvmc')
|
||||
if not build_xv
|
||||
|
@ -819,6 +826,11 @@ libxserver = [
|
|||
|
||||
libxserver += libxserver_dri3
|
||||
|
||||
if build_namespace
|
||||
subdir('Xext/namespace')
|
||||
libxserver += libxserver_namespace
|
||||
endif
|
||||
|
||||
subdir('hw')
|
||||
|
||||
if host_machine.system() != 'windows'
|
||||
|
|
|
@ -90,6 +90,8 @@ option('xace', type: 'boolean', value: true,
|
|||
description: 'X-ACE extension')
|
||||
option('xselinux', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto',
|
||||
description: 'XSELINUX extension')
|
||||
option('namespace', type: 'boolean', value: true,
|
||||
description: 'Container/namespace extension')
|
||||
option('xinerama', type: 'boolean', value: true,
|
||||
description: 'Xinerama extension')
|
||||
option('xcsecurity', type: 'boolean', value: false,
|
||||
|
|
|
@ -115,6 +115,9 @@ static const ExtensionModule staticExtensions[] = {
|
|||
#ifdef XCSECURITY
|
||||
{SecurityExtensionInit, "SECURITY", &noSecurityExtension},
|
||||
#endif
|
||||
#ifdef CONFIG_NAMESPACE
|
||||
{NamespaceExtensionInit, "NAMESPACE", &noNamespaceExtension},
|
||||
#endif
|
||||
#ifdef XINERAMA
|
||||
{PanoramiXExtensionInit, "XINERAMA", &noPanoramiXExtension},
|
||||
#endif /* XINERAMA */
|
||||
|
|
|
@ -23,6 +23,7 @@ extern Bool noShapeExtension;
|
|||
extern Bool noTestExtensions;
|
||||
extern Bool noXFixesExtension;
|
||||
extern Bool noXFree86BigfontExtension;
|
||||
extern Bool noNamespaceExtension;
|
||||
|
||||
void CompositeExtensionInit(void);
|
||||
void DamageExtensionInit(void);
|
||||
|
@ -53,5 +54,6 @@ void XvMCExtensionInit(void);
|
|||
void dri3_extension_init(void);
|
||||
void PseudoramiXExtensionInit(void);
|
||||
void present_extension_init(void);
|
||||
void NamespaceExtensionInit(void);
|
||||
|
||||
#endif /* _XSERVER_EXTINIT_PRIV_H */
|
||||
|
|
Loading…
Reference in New Issue