Skip to contentSkip to conversation

autofs: new package

PATCH New Jonathan Ben-Avraham 3 participants 6 messages Nov 22, 2015 – Nov 30, 2015 2 messages not in the archive

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 autofs: new package

From: Jonathan Ben Avraham <[email protected]>

Add the autofs package from kernel.org

---
 package/Config.in          |    1 +
 package/autofs/Config.in   |   16 ++++++++++++++++
 package/autofs/autofs.hash |    2 ++
 package/autofs/autofs.mk   |   21 +++++++++++++++++++++
 4 files changed, 40 insertions(+)
 create mode 100644 package/autofs/Config.in
 create mode 100644 package/autofs/autofs.hash
 create mode 100644 package/autofs/autofs.mk
package/Config.in +1 -0
index bdc3063..9e59352 100644
@@ -149,6 +149,7 @@ endif
 endmenu
 
 menu "Filesystem and flash utilities"
+	source "package/autofs/Config.in"
 	source "package/btrfs-progs/Config.in"
 	source "package/cifs-utils/Config.in"
 	source "package/cpio/Config.in"
package/autofs/Config.in new file +16 -0
new file mode 100644
index 0000000..2db185b
@@ -0,0 +1,16 @@
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.
+
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git
package/autofs/autofs.hash new file +2 -0
new file mode 100644
index 0000000..2d98375
@@ -0,0 +1,2 @@
+# From https://www.kernel.org/pub/linux/daemons/autofs/v5/sha256sums.asc
+sha256 e08ff0ef9ff365d87b6c33dca136d20e4e07675197a324f2816894cb437021c3  autofs-5.1.1.tar.xz
package/autofs/autofs.mk new file +21 -0
new file mode 100644
index 0000000..0de6b97
@@ -0,0 +1,21 @@
+################################################################################
+#
+# autofs
+#
+################################################################################
+
+AUTOFS_VERSION = 5.1.1
+AUTOFS_SOURCE = autofs-$(AUTOFS_VERSION).tar.xz
+AUTOFS_SITE = $(BR2_KERNEL_MIRROR)/linux/daemons/autofs/v5
+AUTOFS_LICENSE = GPLv2+
+AUTOFS_LICENSE_FILES = COPYING COPYRIGHT
+
+AUTOFS_CONF_OPTS = --disable-mount-locking \
+	--enable-ignore-busy \
+	--with-openldap=no \
+	--with-sasl=no \
+	--with-libtirpc=no
+
+AUTOFS_MAKE_ENV = DONTSTRIP=1
+
+$(eval $(autotools-package))
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 autofs: new package

Hi Yonatan,

Quoted 6 lines · Jonathan Ben-Avraham
package/autofs/Config.in new file +6 -0
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind

package/autofs/Config.in line 16

Quoted 10 lines
package/autofs/Config.in new file +10 -0
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.
+
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git

The browser friendly link
https://git.kernel.org/cgit/linux/storage/autofs/autofs.git/ would be better here, I believe.

baruch

Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
#2 lore raw

PATCH 1/1 autofs: new package

Quoted 21 lines · Baruch Siach

Date: Mon, 23 Nov 2015 07:41:01 +0200
From: Baruch Siach <[email protected]>
To: Jonathan Ben-Avraham <[email protected]>
Cc: buildroot at busybox.net
Subject: Re: [Buildroot] [PATCH 1/1] autofs: new package

Hi Yonatan,

Quoted 12 lines · Jonathan Ben-Avraham
package/autofs/Config.in new file +12 -0
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
Quoted 8 lines

package/autofs/Config.in line 16

Quoted 4 lines
package/autofs/Config.in new file +4 -0
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.
+
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git

The browser friendly link
https://git.kernel.org/cgit/linux/storage/autofs/autofs.git/ would be better here, I believe.

Why? I always struggle to convert back from the browser URLs to plain git URL's so that I can see the sources in vi on my machine and index them. Why would anyone want to use an HTML browser to do this? Doesn't make sense.

- yba

Quoted 3 lines

baruch

Signature · 3 lines
  9590 8E58 D30D 1660 C349  673D B205 4FC4 B8F5 B7F9  ~. .~  Tk Open Systems
=}-------- Jonathan Ben-Avraham ("yba") ----------ooO--U--Ooo------------{=
mailto:yba at tkos.co.il tel:+972.52.486.3386 http://tkos.co.il skype:benavrhm
#3 lore raw

PATCH 1/1 autofs: new package

Hi Yonatan,

Quoted 23 lines · Jonathan Ben Avraham
Quoted 13 lines · Baruch Siach
Quoted 12 lines · Jonathan Ben-Avraham
package/autofs/Config.in new file +12 -0
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
Quoted 8 lines

package/autofs/Config.in line 16

Quoted 4 lines
package/autofs/Config.in new file +4 -0
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.
+
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git

The browser friendly link
https://git.kernel.org/cgit/linux/storage/autofs/autofs.git/ would be better here, I believe.

Quoted 3 lines

Why? I always struggle to convert back from the browser URLs to plain git URL's so that I can see the sources in vi on my machine and index them. Why would anyone want to use an HTML browser to do this? Doesn't make sense.

Well, we usually put a link to the project homepage. In the absence of a suitable homepage, we use a git repo link. You can find a git/vi friendly link if you scroll down the git repo summary page. Converting the other way seems to me quite a bit harder for the less git/vi literate.

baruch

Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): 20151123071348.GL2177@tarshish

#6 lore raw

PATCH 1/1 autofs: new package

Quoted 42 lines · Baruch Siach

Date: Mon, 23 Nov 2015 09:13:48 +0200
From: Baruch Siach <[email protected]>
To: Jonathan Ben Avraham <[email protected]>
Subject: Re: [Buildroot] [PATCH 1/1] autofs: new package

Hi Yonatan,

Quoted 34 lines · Jonathan Ben Avraham
Quoted 32 lines · Baruch Siach
Quoted 23 lines · Jonathan Ben Avraham
Quoted 13 lines · Baruch Siach
Quoted 12 lines · Jonathan Ben-Avraham
package/autofs/Config.in new file +12 -0
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
Quoted 8 lines

package/autofs/Config.in line 16

Quoted 4 lines
package/autofs/Config.in new file +4 -0
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.
+
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git

The browser friendly link
https://git.kernel.org/cgit/linux/storage/autofs/autofs.git/ would be better here, I believe.

Quoted 3 lines

Why? I always struggle to convert back from the browser URLs to plain git URL's so that I can see the sources in vi on my machine and index them. Why would anyone want to use an HTML browser to do this? Doesn't make sense.

Well, we usually put a link to the project homepage. In the absence of a suitable homepage, we use a git repo link. You can find a git/vi friendly link if you scroll down the git repo summary page. Converting the other way seems to me quite a bit harder for the less git/vi literate.

Quoted 5 lines
Quoted 3 lines

What would someone who is not git-literate be doing reading the Buildroot help texts? What is the chance that someone who is not git-literate would be otherwise literate enough to browse the git repo even with a browser?

OK. You may have a point here. Let's see what the maintainers have to say.

Thanks,

- yba

Quoted 3 lines

baruch

Signature · 3 lines
  9590 8E58 D30D 1660 C349  673D B205 4FC4 B8F5 B7F9  ~. .~  Tk Open Systems
=}-------- Jonathan Ben-Avraham ("yba") ----------ooO--U--Ooo------------{=
mailto:yba at tkos.co.il tel:+972.52.486.3386 http://tkos.co.il skype:benavrhm
#7 lore raw

PATCH 1/1 autofs: new package

In reply to Jonathan Ben-Avraham

Dear Jonathan Ben-Avraham,

Quoted 5 lines · Jonathan Ben-Avraham

From: Jonathan Ben Avraham <[email protected]>

Add the autofs package from kernel.org

This package doesn't build when the toolchain doesn't have RPC support, it fails due to <rpc/rpc.h> being unavailable. You can reproduce with this configuration:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-basic-2015.11-rc1-71-g90d1299.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_AUTOFS=y
# BR2_TARGET_ROOTFS_TAR is not set

I've tried to add libtirpc support in it:

+ select BR2_PACKAGE_LIBTIRPC if !BR2_INET_RPC

in Config.in and

+ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
+AUTOFS_CONF_OPTS += --with-libtirpc
+AUTOFS_DEPENDENCIES += libtirpc
+else
+AUTOFS_CONF_OPTS += --without-libtirpc
+endif

in the .mk file, but it still doesn't find the headers because they are located in <sysroot>/usr/include/tirpc/. The m4 code that checks for libtirpc is wrong, as it hardcodes looking in /usr/include/tirpc:

AC_DEFUN([AF_CHECK_LIBTIRPC],
[

# save current flags
af_check_libtirpc_save_cflags="$CFLAGS"
af_check_libtirpc_save_ldflags="$LDFLAGS"
CFLAGS="$CFLAGS -I/usr/include/tirpc"

More comments below.

Quoted 10 lines
package/autofs/Config.in new file +4 -0
new file mode 100644
index 0000000..2db185b
@@ -0,0 +1,16 @@
+config BR2_PACKAGE_AUTOFS
+	bool "autofs"
+	select BR2_PACKAGE_NFS_UTILS # runtime
+	select BR2_PACKAGE_RPCBIND # runtime

package/autofs/Config.in line 14

Quoted 10 lines
package/autofs/Config.in new file +10 -0
+	depends on BR2_TOOLCHAIN_HAS_THREADS # rpcbind
+	depends on BR2_USE_MMU # nfs-utils, rpcbind
+	help
+	  Based on the Debian autofs package description:
+	  Autofs controls the operation of the automount daemons. The automount
+	  daemons automatically mount filesystems when they are used and unmount
+	  them after a period of inactivity based on a set of pre-configured
+	  maps defined by default in /etc/auto.master. The kernel automounter
+	  implements SunOS style automounter under Linux and requires a kernel
+	  version of at least 2.6.17 and the autofs4 kernel module.

Lines are too long, please wrap at 72.

package/autofs/Config.in line 16

Quoted 1 line
package/autofs/Config.in new file +1 -0
+	  git://git.kernel.org/pub/scm/linux/storage/autofs/autofs.git

As Baruch said, please make this link an http link. Yes, I've followed your argumentation with Baruch, but I believe a http:// link is still better.

Quoted 13 lines
package/autofs/autofs.mk new file +7 -0
new file mode 100644
index 0000000..0de6b97
@@ -0,0 +1,21 @@
+################################################################################
+#
+# autofs
+#
+################################################################################
+
+AUTOFS_VERSION = 5.1.1

package/autofs/autofs.mk line 17

Quoted 10 lines
package/autofs/autofs.mk new file +10 -0
+AUTOFS_SOURCE = autofs-$(AUTOFS_VERSION).tar.xz
+AUTOFS_SITE = $(BR2_KERNEL_MIRROR)/linux/daemons/autofs/v5
+AUTOFS_LICENSE = GPLv2+
+AUTOFS_LICENSE_FILES = COPYING COPYRIGHT
+
+AUTOFS_CONF_OPTS = --disable-mount-locking \
+	--enable-ignore-busy \
+	--with-openldap=no \
+	--with-sasl=no \
+	--with-libtirpc=no

We prefer --without-<foo> rather than --with-<foo>=no.

So basically, your patch was almost ready to go, except for the build issue on non-RPC capable toolchains.

Can you look into it and send an updated version?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com