- udpate to release 1.1.11

- refreshed xdm-tolerant-hostname-changes.diff
- supersedes the following patches:
  U_xdm_config-AC_LIBTOOL_DLOPEN-is-required-for-dynamic-lin.patch,
  U_xdm_Fix-missing-linking-dependency-on-ldl.patch,
  U_xdm_config-use-libtool-export-dynamic-option-for-reverse.patch

OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xdm?expand=0&rev=79
This commit is contained in:
Stefan Dirsch 2014-07-18 13:53:08 +00:00 committed by Git OBS Bridge
parent 56a59b8768
commit b80277a9b1
8 changed files with 49 additions and 172 deletions

View File

@ -1,32 +0,0 @@
From c4031966dcbc47b2cc85b83ad78efcc64455cf72 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fernando=20Tarl=C3=A1=20Cardoso=20Lemos?= <fernandotcl@gmail.com>
Date: Sat, 19 Feb 2011 17:53:08 -0200
Subject: [PATCH] Fix missing linking dependency on -ldl.
Recent versions of GCC ship with a linker that doesn't add the deps
of the DSOs to the linking process. This behavior is also found in
GNU gold. This change fixes building with those linkers.
Some references:
http://wiki.debian.org/ToolChain/DSOLinking
https://fedoraproject.org/wiki/UnderstandingDSOLinkChange
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
---
configure.ac | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
--- xdm-1.1.10/configure.ac.orig 2011-08-25 13:56:01.551431000 +0200
+++ xdm-1.1.10/configure.ac 2011-08-25 13:57:09.137351000 +0200
@@ -462,6 +462,9 @@ AM_CONDITIONAL(HAS_XDM_AUTH, test x$xdma
AC_SEARCH_LIBS(crypt, crypt)
+# Function dl() comes from the C library or -ldl
+AC_SEARCH_LIBS([dlopen], [dl])
+
AC_SUBST(XDM_CFLAGS)
AC_SUBST(XDM_LIBS)

View File

@ -1,33 +0,0 @@
From 50c96170ad42321310c346cf412f9ae7e80ec2a7 Mon Sep 17 00:00:00 2001
From: Gaetan Nadon <memsize@videotron.ca>
Date: Sun, 29 Aug 2010 19:56:59 -0400
Subject: [PATCH] config: AC_LIBTOOL_DLOPEN is required for dynamic linking
It adds the following tests in the configuration :
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dlopen... no
checking for dlopen in -ldl... yes
checking whether a program can dlopen itself... yes
checking whether a statically linked program can dlopen itself... no
This has not resulted in any compiler/linker flags change on
a GNU/Linux platform.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
---
configure.ac | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
--- xdm-1.1.10/configure.ac.orig 2011-08-25 12:46:19.795331000 +0200
+++ xdm-1.1.10/configure.ac 2011-08-25 12:46:52.562458000 +0200
@@ -40,7 +40,8 @@ AC_PROG_CC
AM_PROG_CC_C_O
AC_C_INLINE
AC_LIBTOOL_WIN32_DLL
-AM_PROG_LIBTOOL
+AC_LIBTOOL_DLOPEN
+AC_PROG_LIBTOOL
AC_PROG_INSTALL
XORG_PROG_RAWCPP

View File

@ -1,61 +0,0 @@
From 8b7999f8e0f797a593ac2f4697ba3be983b421ae Mon Sep 17 00:00:00 2001
From: Gaetan Nadon <memsize@videotron.ca>
Date: Mon, 30 Aug 2010 07:39:56 -0400
Subject: [PATCH] config: use libtool -export-dynamic option for reverse dependencies
This replaces -rdynamic which is a GNU/Linux only solution.
"If symbols from your executable are needed to satisfy unresolved
references in a library you want to dlopen you will have to use
the flag -export-dynamic. You should use -export-dynamic while
linking the executable that calls dlopen."
It is used by the xserver, in Xdmx for example.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
---
Makefile.am | 5 ++++-
configure.ac | 9 ---------
2 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index fa1b0c4..15abb8c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -45,7 +45,10 @@ AM_CFLAGS = $(CWARNFLAGS)
#
xdm_CFLAGS = $(XDM_CFLAGS)
-xdm_LDADD = $(XDM_LIBS) $(XDM_LDFLAGS)
+# The xdm binary needs to export symbols so that they can be used from
+# libXdmGreet.so loaded through a dlopen call from session.c
+xdm_LDFLAGS = -export-dynamic
+xdm_LDADD = $(XDM_LIBS)
xdm_SOURCES = \
auth.c \
--- xdm-1.1.10/configure.ac.orig 2011-08-25 12:23:38.000000000 +0200
+++ xdm-1.1.10/configure.ac 2011-08-25 13:51:34.000000000 +0200
@@ -408,14 +408,6 @@ if test "x$DYNAMIC_GREETER" = "xyes" ; t
GREETER_CFLAGS="$GREETER_CFLAGS -DGREET_LIB"
- # The xdm binary needs to export symbols so that they can be used from
- # libXdmGreet.so. Some platforms require extra flags to do this.
- # gcc should set these flags when -rdynamic is passed to it, other
- # compilers/linkers may need to be added
- if test "x$GCC" = "xyes"; then
- XDM_LDFLAGS="$XDM_LDFLAGS -rdynamic"
- fi
-
PKG_CHECK_MODULES(XDMGREET, xt x11 xext)
GREETERLIB="${XDMLIBDIR}/libXdmGreet.so"
@@ -471,7 +463,6 @@ AC_SEARCH_LIBS(crypt, crypt)
AC_SUBST(XDM_CFLAGS)
AC_SUBST(XDM_LIBS)
-AC_SUBST(XDM_LDFLAGS)
#
# xdmshell

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1487f7168e65fb7ea8cf21e99cdec412e643680c5dac9688aad5f87beba4f97f
size 423578

3
xdm-1.1.11.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d4da426ddea0124279a3f2e00a26db61944690628ee818a64df9d27352081c47
size 446612

View File

@ -1,8 +1,6 @@
Index: xdm-1.1.10/auth.c
===================================================================
--- xdm-1.1.10.orig/auth.c
+++ xdm-1.1.10/auth.c
@@ -769,7 +769,7 @@ writeAddr (
--- xdm/auth.c.orig 2011-09-25 09:35:47.000000000 +0200
+++ xdm/auth.c 2014-07-18 14:55:03.244300844 +0200
@@ -767,7 +767,7 @@ writeAddr (
}
static void
@ -11,17 +9,17 @@ Index: xdm-1.1.10/auth.c
{
char displayname[100];
int len = _XGetHostname (displayname, sizeof(displayname));
@@ -805,6 +805,9 @@ DefineLocal (FILE *file, Xauth *auth)
@@ -803,6 +803,9 @@ DefineLocal (FILE *file, Xauth *auth)
#endif
writeAddr (FamilyLocal, len, displayname, file, auth);
+
+ if (pLocalAddress && displayname)
+ if (pLocalAddress)
+ *pLocalAddress = strdup(displayname);
}
#ifdef HAS_GETIFADDRS
@@ -1238,7 +1241,7 @@ setAuthNumber (Xauth *auth, char *name)
#ifdef HAVE_GETIFADDRS
@@ -1236,7 +1239,7 @@ setAuthNumber (Xauth *auth, char *name)
}
static void
@ -30,7 +28,7 @@ Index: xdm-1.1.10/auth.c
{
int fd;
@@ -1265,13 +1268,13 @@ writeLocalAuth (FILE *file, Xauth *auth,
@@ -1263,13 +1266,13 @@ writeLocalAuth (FILE *file, Xauth *auth,
DefineSelf (fd, file, auth);
close (fd);
#endif
@ -46,7 +44,7 @@ Index: xdm-1.1.10/auth.c
{
int family = FamilyLocal;
char *addr;
@@ -1290,7 +1293,7 @@ writeRemoteAuth (FILE *file, Xauth *auth
@@ -1288,7 +1291,7 @@ writeRemoteAuth (FILE *file, Xauth *auth
}
else
{
@ -55,41 +53,41 @@ Index: xdm-1.1.10/auth.c
}
}
@@ -1314,6 +1317,7 @@ SetUserAuthorization (struct display *d,
#ifdef HAS_MKSTEMP
@@ -1312,6 +1315,7 @@ SetUserAuthorization (struct display *d,
#ifdef HAVE_MKSTEMP
int fd;
#endif
+ char *localAddress = NULL;
Debug ("SetUserAuthorization\n");
auths = d->authorizations;
@@ -1406,10 +1410,10 @@ SetUserAuthorization (struct display *d,
@@ -1404,10 +1408,10 @@ SetUserAuthorization (struct display *d,
{
magicCookie = i;
if (d->displayType.location == Local)
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name,&localAddress);
if (d->displayType.location == Local)
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name, &localAddress);
#ifdef XDMCP
else
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name, &localAddress);
else
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name, &localAddress);
#endif
break;
}
@@ -1427,10 +1431,10 @@ SetUserAuthorization (struct display *d,
@@ -1425,10 +1429,10 @@ SetUserAuthorization (struct display *d,
!strncmp (auths[i]->name, "MIT-KERBEROS-5", 14))
auths[i]->data_length = 0;
if (d->displayType.location == Local)
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name, &localAddress);
if (d->displayType.location == Local)
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name, &localAddress);
#ifdef XDMCP
else
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name, &localAddress);
else
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name, &localAddress);
#endif
auths[i]->data_length = data_len;
}
@@ -1475,6 +1479,12 @@ SetUserAuthorization (struct display *d,
@@ -1473,6 +1477,12 @@ SetUserAuthorization (struct display *d,
verify->systemEnviron = setEnv (verify->systemEnviron,
"XAUTHORITY", envname);
}
@ -102,16 +100,16 @@ Index: xdm-1.1.10/auth.c
XauUnlockAuth (name);
if (envname)
chown (envname, verify->uid, verify->gid);
@@ -1513,10 +1523,10 @@ RemoveUserAuthorization (struct display
@@ -1511,10 +1521,10 @@ RemoveUserAuthorization (struct display
for (i = 0; i < d->authNum; i++)
{
if (d->displayType.location == Local)
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name, NULL);
- writeLocalAuth (new, auths[i], d->name);
+ writeLocalAuth (new, auths[i], d->name, NULL);
#ifdef XDMCP
else
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name,NULL);
- writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name);
+ writeRemoteAuth (new, auths[i], d->peer, d->peerlen, d->name, NULL);
#endif
}
doWrite = 1;

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Tue Jul 15 14:32:21 UTC 2014 - sndirsch@suse.com
- udpate to release 1.1.11
- refreshed xdm-tolerant-hostname-changes.diff
- supersedes the following patches:
U_xdm_config-AC_LIBTOOL_DLOPEN-is-required-for-dynamic-lin.patch,
U_xdm_Fix-missing-linking-dependency-on-ldl.patch,
U_xdm_config-use-libtool-export-dynamic-option-for-reverse.patch
-------------------------------------------------------------------
Wed May 28 16:00:23 UTC 2014 - fcrozat@suse.com

View File

@ -31,7 +31,7 @@
%endif
Name: xdm
Version: 1.1.10
Version: 1.1.11
Release: 0
Summary: X Display Manager
License: MIT
@ -46,9 +46,6 @@ Source4: display-manager.service
Patch0: xdm-consolekit.diff
%endif
Patch1: xdm-tolerant-hostname-changes.diff
Patch2: U_xdm_config-AC_LIBTOOL_DLOPEN-is-required-for-dynamic-lin.patch
Patch3: U_xdm_config-use-libtool-export-dynamic-option-for-reverse.patch
Patch4: U_xdm_Fix-missing-linking-dependency-on-ldl.patch
%if 0%{?suse_version} >= 01140 && 0%{?suse_version} < 1320
# Needed to create the man page symlink to init.d
BuildRequires: aaa_base-extras
@ -100,14 +97,13 @@ cp %{SOURCE2} .
%if !%with_systemd
%patch0 -p1
%endif
pushd xdm
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
# needed for patch0, patch2, patch3, patch4
autoreconf -fi
popd
%build
# needed for patch0
autoreconf -fi
%configure \
--disable-static \
--with-pam \
@ -220,7 +216,6 @@ chmod 0755 %{buildroot}%{_sbindir}/rcxdm
%ghost %{_localstatedir}/log/xdm.errors
%{_bindir}/chooser
%{_bindir}/xdm
%{_bindir}/xdmshell
%{_sbindir}/rcxdm
%if 0%{?suse_version} >= 1320
%{_sbindir}/rcdisplay-manager