On 11/08/2013 12:32 PM, Hongxu Jia wrote:
According to DISTRO_FEATURES to add pam support for quagga, and import
configure file from Fedora.

Signed-off-by: Hongxu Jia <hongxu....@windriver.com>
---
  meta-networking/recipes-protocols/quagga/files/quagga.pam | 13 +++++++++++++
  meta-networking/recipes-protocols/quagga/quagga.inc       | 13 ++++++++++++-
  2 files changed, 25 insertions(+), 1 deletion(-)
  create mode 100644 meta-networking/recipes-protocols/quagga/files/quagga.pam

diff --git a/meta-networking/recipes-protocols/quagga/files/quagga.pam 
b/meta-networking/recipes-protocols/quagga/files/quagga.pam
new file mode 100644
index 0000000..3541a97
--- /dev/null
+++ b/meta-networking/recipes-protocols/quagga/files/quagga.pam
@@ -0,0 +1,13 @@
+#
+# The PAM configuration file for the quagga `vtysh' service
+#
+
+# This allows root to change user infomation without being
+# prompted for a password
+auth           sufficient      pam_rootok.so
+
+# The standard Unix authentication modules, used with
+# NIS (man nsswitch) as well as normal /etc/passwd and
+# /etc/shadow entries.
+auth       include      common-auth
+
diff --git a/meta-networking/recipes-protocols/quagga/quagga.inc 
b/meta-networking/recipes-protocols/quagga/quagga.inc
index 2106c9b..52cd7a3 100644
--- a/meta-networking/recipes-protocols/quagga/quagga.inc
+++ b/meta-networking/recipes-protocols/quagga/quagga.inc
@@ -32,10 +32,12 @@ SRC_URI = 
"http://download.savannah.gnu.org/releases/quagga${QUAGGASUBDIR}/quagg
             file://watchquagga.init \
             file://watchquagga.default \
             file://volatiles.03_quagga \
+           file://file://quagga.pam \

Why is there be two file://?

             file://ripd-fix-two-bugs-after-received-SIGHUP.patch"

-PACKAGECONFIG ??= ""
+PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}"
  PACKAGECONFIG[cap] = "--enable-capabilities,--disable-capabilities,libcap"
+PACKAGECONFIG[pam] = "--with-libpam, --without-libpam, libpam"

  inherit autotools update-rc.d useradd

@@ -98,6 +100,15 @@ do_install () {
      # Remove generated info dir file, it doesn't belong in the generated
      # package.
      rm -f ${D}${infodir}/dir
+
+    # For PAM
+    for feature in ${DISTRO_FEATURES}; do
+        if [ "$feature" = "pam" ]; then
+            install -D -m 644 ${WORKDIR}/quagga.pam 
${D}/${sysconfdir}/pam.d/quagga
+            break
+        fi
+    done
+


Could you use the below method to simply this loop

if ${@base_contains('DISTRO_FEATURES','sysvinit','false','true',d)};then
    if

-Roy

  }

  # Split into a main package and separate per-protocol packages


--
Best Reagrds,
Roy | RongQing Li
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Reply via email to