Commit e92c2a87 authored by Mihai Moldovan's avatar Mihai Moldovan

Support building with legacy (pre-7.1.0) Xext proto versions.

Legacy Xext proto versions are automatically detected by the main Makefile.
parent 0d6207bd
...@@ -29,6 +29,9 @@ CONFIGURE ?= ./configure --prefix="$(PREFIX)" ...@@ -29,6 +29,9 @@ CONFIGURE ?= ./configure --prefix="$(PREFIX)"
FONT_DEFINES ?= $(shell pkg-config --modversion xfont2 1>/dev/null 2>/dev/null && echo "-DHAS_XFONT2") $(shell pkg-config --exists 'xfont < 1.4.2' 1>/dev/null 2>/dev/null && echo "-DLEGACY_XFONT1") FONT_DEFINES ?= $(shell pkg-config --modversion xfont2 1>/dev/null 2>/dev/null && echo "-DHAS_XFONT2") $(shell pkg-config --exists 'xfont < 1.4.2' 1>/dev/null 2>/dev/null && echo "-DLEGACY_XFONT1")
XFONTLIB ?= $(shell pkg-config --modversion xfont2 1>/dev/null 2>/dev/null && echo "-lXfont2" || echo "-lXfont") XFONTLIB ?= $(shell pkg-config --modversion xfont2 1>/dev/null 2>/dev/null && echo "-lXfont2" || echo "-lXfont")
# Support older libXext versions.
XEXT_EXTRA_DEFINES ?= $(shell pkg-config --exists 'xextproto < 7.1.0' 1>/dev/null 2>/dev/null && echo "-DLEGACY_XEXT_PROTO")
NX_VERSION_MAJOR=$(shell ./version.sh 1) NX_VERSION_MAJOR=$(shell ./version.sh 1)
NX_VERSION_MINOR=$(shell ./version.sh 2) NX_VERSION_MINOR=$(shell ./version.sh 2)
NX_VERSION_MICRO=$(shell ./version.sh 3) NX_VERSION_MICRO=$(shell ./version.sh 3)
...@@ -96,7 +99,7 @@ version: ...@@ -96,7 +99,7 @@ version:
build-env: version build-env: version
# prepare Makefiles and the nx-X11 symlinking magic # prepare Makefiles and the nx-X11 symlinking magic
${MAKE} -C nx-X11 BuildIncludes FONT_DEFINES="$(FONT_DEFINES)" ${MAKE} -C nx-X11 BuildIncludes FONT_DEFINES="$(FONT_DEFINES)" XEXT_EXTRA_DEFINES="$(XEXT_EXTRA_DEFINES)"
# set up environment for libNX_X11 build (X11 header files) # set up environment for libNX_X11 build (X11 header files)
mkdir -p nx-X11/exports/include/nx-X11/ mkdir -p nx-X11/exports/include/nx-X11/
...@@ -121,7 +124,7 @@ clean-env: version ...@@ -121,7 +124,7 @@ clean-env: version
[ -d exports/include/nx-X11/Xtrans ] && $(RM_DIR) exports/include/nx-X11/Xtrans/ || : [ -d exports/include/nx-X11/Xtrans ] && $(RM_DIR) exports/include/nx-X11/Xtrans/ || :
[ -d exports/include/nx-X11/ ] && $(RM_DIR) exports/include/nx-X11/ || : [ -d exports/include/nx-X11/ ] && $(RM_DIR) exports/include/nx-X11/ || :
${MAKE} -C nx-X11 CleanEnv FONT_DEFINES="$(FONT_DEFINES)" ${MAKE} -C nx-X11 CleanEnv FONT_DEFINES="$(FONT_DEFINES)" XEXT_EXTRA_DEFINES="$(XEXT_EXTRA_DEFINES)"
build-lite: build-lite:
cd nxcomp && autoreconf -vfsi && (${CONFIGURE}) && ${MAKE} cd nxcomp && autoreconf -vfsi && (${CONFIGURE}) && ${MAKE}
...@@ -145,8 +148,8 @@ build-full: build-env ...@@ -145,8 +148,8 @@ build-full: build-env
# build nxagent fourth # build nxagent fourth
./mesa-quilt push -a ./mesa-quilt push -a
${MAKE} -C nx-X11 BuildDependsOnly FONT_DEFINES="$(FONT_DEFINES)" ${MAKE} -C nx-X11 BuildDependsOnly FONT_DEFINES="$(FONT_DEFINES)" XEXT_EXTRA_DEFINES="$(XEXT_EXTRA_DEFINES)"
${MAKE} -C nx-X11 World USRLIBDIR="$(USRLIBDIR)" SHLIBDIR="$(SHLIBDIR)" FONT_DEFINES="$(FONT_DEFINES)" XFONTLIB="$(XFONTLIB)" ${MAKE} -C nx-X11 World USRLIBDIR="$(USRLIBDIR)" SHLIBDIR="$(SHLIBDIR)" FONT_DEFINES="$(FONT_DEFINES)" XFONTLIB="$(XFONTLIB)" XEXT_EXTRA_DEFINES="$(XEXT_EXTRA_DEFINES)"
# build nxproxy fifth # build nxproxy fifth
cd nxproxy && autoreconf -vfsi && (${CONFIGURE}) && ${MAKE} cd nxproxy && autoreconf -vfsi && (${CONFIGURE}) && ${MAKE}
......
...@@ -546,6 +546,9 @@ X_BYTE_ORDER = ByteOrder ...@@ -546,6 +546,9 @@ X_BYTE_ORDER = ByteOrder
#define HasShm NO #define HasShm NO
#endif #endif
#endif #endif
#ifndef HasLegacyXextProto
#define HasLegacyXextProto NO
#endif
#ifndef HasCbrt #ifndef HasCbrt
#define HasCbrt YES #define HasCbrt YES
#endif #endif
...@@ -1882,6 +1885,12 @@ FONT_DEFINES = ...@@ -1882,6 +1885,12 @@ FONT_DEFINES =
XFONTLIB = -lXfont XFONTLIB = -lXfont
#endif #endif
#if HasLegacyXextProto
XEXT_EXTRA_DEFINES = -DLEGACY_XEXT_PROTO
#else
XEXT_EXTRA_DEFINES =
#endif
/* /*
* Here we set up flags needed to produce position-independent code * Here we set up flags needed to produce position-independent code
* when doing C and C++ compilation. The default if you specify C * when doing C and C++ compilation. The default if you specify C
...@@ -1980,7 +1989,7 @@ FONT_DEFINES = ...@@ -1980,7 +1989,7 @@ FONT_DEFINES =
* LOCAL_LDFLAGS contains client-specific ld flags flags set in Imakefile * LOCAL_LDFLAGS contains client-specific ld flags flags set in Imakefile
*/ */
ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES) ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(SETITIMER_DEFINES) $(FONT_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES) ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(SETITIMER_DEFINES) $(FONT_DEFINES) $(PROTO_DEFINES) $(XEXT_EXTRA_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES)
CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES) CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES)
LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES) LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
LDPRELIB = LdPreLib $(INSTALLED_LIBS) LDPRELIB = LdPreLib $(INSTALLED_LIBS)
......
...@@ -403,6 +403,13 @@ ...@@ -403,6 +403,13 @@
*/ */
/* /*
* If building with SHM support enabled and using a legacy Xext protocol
* version (lower than 7.1.0), uncomment this.
*
#define HasLegacyXextProto YES
*/
/*
* If you are running NetBSD 0.9C or later, and have the aperture driver * If you are running NetBSD 0.9C or later, and have the aperture driver
* installed, uncomment this. * installed, uncomment this.
* *
......
...@@ -432,6 +432,10 @@ IPLAN2P8_DEFS = -DUSE_IPLAN2P8 ...@@ -432,6 +432,10 @@ IPLAN2P8_DEFS = -DUSE_IPLAN2P8
# define HasLegacyXfont1 NO # define HasLegacyXfont1 NO
#endif #endif
#ifndef HasLegacyXextProto
# define HasLegacyXextProto NO
#endif
#ifndef BuildScreenSaverExt #ifndef BuildScreenSaverExt
# define BuildScreenSaverExt YES # define BuildScreenSaverExt YES
#endif #endif
......
...@@ -68,8 +68,12 @@ SOFTWARE. ...@@ -68,8 +68,12 @@ SOFTWARE.
#include "xvdix.h" #include "xvdix.h"
#ifdef MITSHM #ifdef MITSHM
#define _XSHM_SERVER_ #define _XSHM_SERVER_
#ifdef LEGACY_XEXT_PROTO
#include <X11/extensions/XShm.h>
#else
#include <X11/extensions/shmproto.h> #include <X11/extensions/shmproto.h>
#endif #endif
#endif
#include "xvdisp.h" #include "xvdisp.h"
......
...@@ -147,8 +147,12 @@ typedef void (*InitExtension)(void); ...@@ -147,8 +147,12 @@ typedef void (*InitExtension)(void);
#ifdef MITSHM #ifdef MITSHM
#define _XSHM_SERVER_ #define _XSHM_SERVER_
#ifdef LEGACY_XEXT_PROTO
#include <X11/extensions/XShm.h>
#else
#include <X11/extensions/shmproto.h> #include <X11/extensions/shmproto.h>
#endif #endif
#endif
#ifdef XTEST #ifdef XTEST
#define _XTEST_SERVER_ #define _XTEST_SERVER_
#include <nx-X11/extensions/xtestconst.h> #include <nx-X11/extensions/xtestconst.h>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment