]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
Fixed different compilation scheme by making /var/lxc directory relative to
authordlezcano <dlezcano>
Sun, 26 Oct 2008 22:06:49 +0000 (22:06 +0000)
committerdlezcano <dlezcano>
Sun, 26 Oct 2008 22:06:49 +0000 (22:06 +0000)
the installation prefix and by adding some extra path to search for the
'setcap' command.

Makefile.am
configure.in
lxc.spec.in
src/lxc/Makefile.am
src/lxc/lxc.h

index 0b34a6361fd8a7108f3342cbe93838ed55168d83..2ab16cb11847120200c244ec3237d8d48f651334 100644 (file)
@@ -5,12 +5,14 @@ DIST_SUBDIRS = config src test etc
 EXTRA_DIST = lxc.spec
 
 ChangeLog::
-       @echo "Generating ChangeLog"
-       @cvs2cl
+       touch ChangeLog
 
 rpm: dist
        rpmbuild --clean -ta ${distdir}.tar.gz
+
 release: rpm
+       @echo "Generating ChangeLog"
+       @cvs2cl
        @sh ./release.sh $(PACKAGE_NAME) \
                        $(LXC_MAJOR_VERSION) \
                        $(LXC_MINOR_VERSION) \
index 9ce751ac9e366d278bd02e8091f905f3517c889b..ebeca46d88060a51b38a6417897ae6d1111f37c5 100644 (file)
@@ -12,7 +12,7 @@ AC_PROG_RANLIB
 AM_PROG_CC_C_O
 AC_GNU_SOURCE
 AC_PROG_LIBTOOL
-AC_CHECK_PROG(SETCAP, setcap, yes, no, "/usr/sbin")
+AC_CHECK_PROG(SETCAP, setcap, yes, no)
 
 AC_CHECK_HEADERS([linux/netlink.h linux/genetlink.h], [], AC_MSG_ERROR([netlink headers not found]),
 [#include <linux/types.h>
@@ -59,8 +59,8 @@ Warning:
 --------
 
 The libcap-2 is not installed. That means the tools to
-set the privilege for the lxc commands are not available
-and you will need to run these commands as root
+set the privilege for the lxc commands are not available,
+that's ok, but you will need to run these commands as root
 
 ])
 
index c311a0c4b0f4e88576178d1a8ca83d874e0296ee..49cce65af26d700cabe859b24276925dd1b001e7 100644 (file)
@@ -75,7 +75,9 @@ development of containers
 %setup -q
 
 %build
-%configure $args
+
+# I don't understand why but I have to specify this prefix :(
+%configure --prefix=/ $args
 
 ncpus=`egrep -c "^cpu[0-9]+" /proc/stat || :`
 make -j$ncpus
@@ -106,9 +108,24 @@ fi
 
 chmod ugo+w /var/lxc
 
-setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-execute
-setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-start
-setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-restart
+PATH=$PATH:/usr/sbin:/sbin
+
+which setcap 2>&1 > /dev/null
+RES=$?
+
+if [ $RES != 0 ]; then
+    echo -e "\t********************WARNING*************************"
+    echo -e "\t* The 'setcap' command was not found, this is not  *" 
+    echo -e "\t* a problem and the 'lxc' package is installed but *"
+    echo -e "\t* you will have to run the 'lxc' commands as root. *"
+    echo -e "\t* If you wish to run these commands as a non-root  *"
+    echo -e "\t* user, you will need to install libcap-2 package  *"
+    echo -e "\t* and reinstall the lxc package                    *"
+    echo -e "\t****************************************************"
+else
+setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-execute && setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-start && setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep %{_bindir}/lxc-restart
+fi
+
 
 %files
 %defattr(-,root,root)
index 70b5a19af293c24ea1ec194fb165ed613d55a5eb..c22f7574076c2535bfc8cec5893ea45408bdf8ab 100644 (file)
@@ -1,5 +1,5 @@
-INCLUDES= -I$(top_srcdir)/src
-
+lxcpath=$(prefix)/var/lxc
+INCLUDES= -I$(top_srcdir)/src -DLXCPATH="\"$(lxcpath)\""
 lib_LTLIBRARIES = liblxc.la
 pkginclude_HEADERS = \
                monitor.h \
@@ -113,9 +113,10 @@ lxc_version_SOURCES = lxc_version.c
 lxc_version_LDADD = liblxc.la
 
 install-exec-local:
-       -@/usr/sbin/setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-execute 2>&1 > /dev/null && \
-       /usr/sbin/setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-start && \
-       /usr/sbin/setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-restart && \
+       -@export PATH=$$PATH:/sbin:/usr/sbin && \
+        setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-execute && \
+       setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-start && \
+       setcap cap_net_admin,cap_net_raw,cap_sys_admin,cap_dac_override=ep $(bindir)/lxc-restart && \
        mkdir -p $(prefix)/var/lxc && \
        chmod ugo+rw $(prefix)/var/lxc || \
        (echo && echo && \
index 601dfa202c6380001fe361e73cdd1b1d10b26b52..810f7eb9d872192d8d61d2ad52475c9c28531757 100644 (file)
@@ -43,7 +43,7 @@ extern "C" {
 #include <lxc/cgroup.h>
 #include <lxc/monitor.h>
 
-#define LXCPATH "/var/lxc"
+/* #define LXCPATH "/var/lxc" */
 #define MAXPIDLEN 20
 
 struct lxc_mem_stat;