Re: [PATCH] Fix include semanage/handle.h for semanage_set_root() as used by semodule

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2011-09-09 at 13:31 -0400, Eric Paris wrote:
> I'm also really annoyed by this at times, but I don't know what the
> right answer is.

Well, as long as it is a git-only thing, perhaps a README file would do.

It could be improved too...

For example, load_policy does not honour LIBDIR or SHLIBDIR:

--- selinux-05092011/policycoreutils/load_policy/Makefile	2011-09-02
04:19:47.317716618 +0200
+++ selinux-05092011-fix-LIBDIR/policycoreutils/load_policy/Makefile
2011-09-09 19:44:23.710064117 +0200
@@ -3,11 +3,12 @@ PREFIX ?= ${DESTDIR}/usr
 SBINDIR ?= $(DESTDIR)/sbin
 USRSBINDIR ?= $(PREFIX)/sbin
 MANDIR ?= $(PREFIX)/share/man
+LIBDIR ?= $(PREFIX)/usr/lib
 LOCALEDIR ?= /usr/share/locale
 
 CFLAGS ?= -Werror -Wall -W
 override CFLAGS += $(LDFLAGS) -I$(PREFIX)/include -DUSE_NLS
-DLOCALEDIR="\"$(LOCALEDIR)\"" -DPACKAGE="\"policycoreutils\""
-LDLIBS += -lsepol -lselinux -L$(PREFIX)/lib
+LDLIBS += -lsepol -lselinux -L$(LIBDIR)
 
 TARGETS=$(patsubst %.c,%,$(wildcard *.c))
 


> We really treat it like we have 5+ separate projects which just all
> happen to live in the same git tree.  Thus to build libselinux you
> must have already built and installed libsepol.  And then to build
> libsemanage you need to have done that with both libsepol and
> libselinux.  Then of course to get the builds and install right (on
> Fedora/RHEL) you have to know to use LIBDIR=/usr/lib64 SHLIBDIR=/lib64
> for libsepol and libsepol, but SHLIBDIR=/usr/lib64 for libsemanage.
> Its a mess, but I don't know what to do that's better....
> 
> -Eric
> 
> On Fri, Sep 9, 2011 at 1:17 PM, Guido Trentalancia
> <guido@xxxxxxxxxxxxxxxx> wrote:
> > It only happens when building from git (because it uses the top-level
> > Makefile which is not being distributed with the released components).
> >
> > On Fri, 2011-09-09 at 19:01 +0200, Guido Trentalancia wrote:
> >> Hello,
> >>
> >> I am not able to build semodule from the current git unless the
> >> following patch is applied.
> >>
> >> Also, it would still be problematic if an outdated version of handle.h
> >> is getting picked up directly from the root include directory (as it
> >> happens now) and not from the local build directory... In other words,
> >> the Makefile and build system should be modified so that the local
> >> header files are picked up during each new build rather than the
> >> system-wide ones from previous installations.
> >>
> >> But at least this is a start:
> >>
> >> Include <semanage/handle.h> for semodule_set_root() currently used by semodule
> >>
> >> --- selinux-05092011/policycoreutils/semodule/semodule.c      2011-09-02 04:19:47.357716917 +0200
> >> +++ selinux-05092011-fix-semanage_set_root/policycoreutils/semodule/semodule.c        2011-09-09 18:41:24.078319022 +0200
> >> @@ -21,6 +21,7 @@
> >>  #include <sys/types.h>
> >>
> >>  #include <semanage/modules.h>
> >> +#include <semanage/handle.h>
> >>
> >>  enum client_modes { NO_MODE, INSTALL_M, UPGRADE_M, BASE_M, ENABLE_M, DISABLE_M, REMOVE_M,
> >>       LIST_M, RELOAD
> >>
> >>
> >> --
> >> This message was distributed to subscribers of the selinux mailing list.
> >> If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
> >> the words "unsubscribe selinux" without quotes as the message.
> >>
> >
> >
> >
> > --
> > This message was distributed to subscribers of the selinux mailing list.
> > If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
> > the words "unsubscribe selinux" without quotes as the message.
> >
> 



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


[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux