All of lore.kernel.org
 help / color / mirror / Atom feed
* Patch for libselinux to build correctly on Sparc.
@ 2007-09-24 15:54 Daniel J Walsh
  2007-09-24 16:28 ` Stephen Smalley
  0 siblings, 1 reply; 2+ messages in thread
From: Daniel J Walsh @ 2007-09-24 15:54 UTC (permalink / raw)
  To: Stephen Smalley, SE Linux

[-- Attachment #1: Type: text/plain, Size: 1167 bytes --]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

https://bugzilla.redhat.com/show_bug.cgi?id=199367

sparc64 needs to use CFLAGS with CC to link properly using gcc the
attached patch fixes this issue

Patch submitted originally by Dennis Gilmore.

Further info from bugzilla.


(In reply to comment #7)
> It's ok by me, although I'm wondering what CFLAGS you are supplying
that matter
> here.

For multilib support, sparc needs libselinux (and libsepol) to be built
as sparc
(32bit) and sparc64 (64bit). sparc builds fine (-m32 is assumed by the
compiler), but when building for sparc64, we need all compile and link
operations to have -m64 passed for it, or else gcc will mismatch (it
will make
sparc64 object files, then try to link them as a 32bit library) and the
build fails.

The easiest way to ensure safe and consistent builds is to universally apply
CFLAGS whenever calling CC, which is what this patch does.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFG9926rlYvE4MpobMRAuguAKDBxJbz4hV3khmgHFYRiPYCuSS8qACeJUJv
99nyoIM2VK6cbzR/9xlNHwA=
=htQu
-----END PGP SIGNATURE-----

[-- Attachment #2: diff --]
[-- Type: text/plain, Size: 758 bytes --]

diff --exclude-from=exclude -N -u -r nsalibselinux/src/Makefile libselinux-2.0.34/src/Makefile
--- nsalibselinux/src/Makefile	2007-08-03 16:02:56.000000000 -0400
+++ libselinux-2.0.34/src/Makefile	2007-09-24 11:51:42.000000000 -0400
@@ -57,10 +57,10 @@
 	$(CC) $(CFLAGS) -I$(PYINC) -fPIC -DSHARED -c -o $@ $<
 
 $(SWIGSO): $(SWIGLOBJ)
-	$(CC) $(LDFLAGS) -shared -o $@ $< -L. -lselinux -L$(LIBDIR) -Wl,-soname,$@
+	$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $< -L. -lselinux -L$(LIBDIR) -Wl,-soname,$@
 
 $(LIBSO): $(LOBJS)
-	$(CC) $(LDFLAGS) -shared -o $@ $^ -ldl -L$(LIBDIR) -Wl,-soname,$(LIBSO),-z,defs,-z,relro
+	$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ -ldl -L$(LIBDIR) -Wl,-soname,$(LIBSO),-z,defs,-z,relro
 	ln -sf $@ $(TARGET) 
 
 %.o:  %.c policy.h

[-- Attachment #3: diff.sig --]
[-- Type: application/octet-stream, Size: 65 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Patch for libselinux to build correctly on Sparc.
  2007-09-24 15:54 Patch for libselinux to build correctly on Sparc Daniel J Walsh
@ 2007-09-24 16:28 ` Stephen Smalley
  0 siblings, 0 replies; 2+ messages in thread
From: Stephen Smalley @ 2007-09-24 16:28 UTC (permalink / raw)
  To: Daniel J Walsh; +Cc: SE Linux

On Mon, 2007-09-24 at 11:54 -0400, Daniel J Walsh wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=199367
> 
> sparc64 needs to use CFLAGS with CC to link properly using gcc the
> attached patch fixes this issue
> 
> Patch submitted originally by Dennis Gilmore.
> 
> Further info from bugzilla.
> 
> 
> (In reply to comment #7)
> > It's ok by me, although I'm wondering what CFLAGS you are supplying
> that matter
> > here.
> 
> For multilib support, sparc needs libselinux (and libsepol) to be built
> as sparc
> (32bit) and sparc64 (64bit). sparc builds fine (-m32 is assumed by the
> compiler), but when building for sparc64, we need all compile and link
> operations to have -m64 passed for it, or else gcc will mismatch (it
> will make
> sparc64 object files, then try to link them as a 32bit library) and the
> build fails.
> 
> The easiest way to ensure safe and consistent builds is to universally apply
> CFLAGS whenever calling CC, which is what this patch does.

Thanks, also applied patch below to do the same for libsepol and
libsemanage.

Index: libsemanage/src/Makefile
===================================================================
--- libsemanage/src/Makefile	(revision 2575)
+++ libsemanage/src/Makefile	(working copy)
@@ -47,14 +47,14 @@
 	$(CC) $(CFLAGS) -I$(PYINC) -fPIC -DSHARED -c -o $@ $<
 
 $(SWIGSO): $(SWIGLOBJ)
-	$(CC) $(LDFLAGS) -shared -o $@ $< -L. -lsemanage -l$(PYLIBVER) -L$(LIBDIR) -Wl,-soname,$@,-z,defs
+	$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $< -L. -lsemanage -l$(PYLIBVER) -L$(LIBDIR) -Wl,-soname,$@,-z,defs
 
 $(LIBA): $(OBJS)
 	$(AR) rcs $@ $^
 	ranlib $@
 
 $(LIBSO): $(LOBJS)
-	$(CC) $(LDFLAGS) -shared -o $@ $^ -lsepol -lselinux -lustr -L$(LIBDIR) -Wl,-soname,$(LIBSO),--version-script=libsemanage.map,-z,defs
+	$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ -lsepol -lselinux -lustr -L$(LIBDIR) -Wl,-soname,$(LIBSO),--version-script=libsemanage.map,-z,defs
 	ln -sf $@ $(TARGET)
 
 conf-scan.c: conf-scan.l conf-parse.h
Index: libsepol/src/Makefile
===================================================================
--- libsepol/src/Makefile	(revision 2575)
+++ libsepol/src/Makefile	(working copy)
@@ -20,7 +20,7 @@
 	ranlib $@
 
 $(LIBSO): $(LOBJS)
-	$(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,$(LIBSO),--version-script=libsepol.map,-z,defs
+	$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,$(LIBSO),--version-script=libsepol.map,-z,defs
 	ln -sf $@ $(TARGET) 
 
 %.o:  %.c 

-- 
Stephen Smalley
National Security Agency


--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-09-24 16:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-24 15:54 Patch for libselinux to build correctly on Sparc Daniel J Walsh
2007-09-24 16:28 ` Stephen Smalley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.