From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] adding dhcpcd
Date: Thu, 7 Mar 2013 18:15:25 +0100 [thread overview]
Message-ID: <20130307181525.340f8050@skate> (raw)
In-Reply-To: <1362670216.30287.9.camel@genx>
Dear John Stile,
On Thu, 07 Mar 2013 07:30:16 -0800, John Stile wrote:
> How does this look?
Do you want this patch to be integrated? If so, please send just your
patch in an e-mail, with nothing else. The best thing is to use git
send-email.
> -----------------
> dhcpcd patch
> -----------------
> Adding pacakge dhcpcd to buildroot, ordered alphbetically in Networking pacakges, warning about uClibc config.
>
> signed-off-by: John Stile <john@stilen.com>
Formatting of the commit log is not correct:
* One first line, less than ~80-100 characters, giving the title of
the patch. So something like 'dhcpcd: new package'
* One empty line.
* One or more paragraphs giving details about what the patch does. It
should be line-wrapped at ~80 columns. Please fix the typos in the
message.
* One empty line.
* Signed-off-by line. Note the capital S.
>
> --- a/buildroot-2011.11/package/Config.in 2013-03-07 07:17:35.000000000 -0800
> +++ b/buildroot-2011.11/package/Config.in 2013-03-07 07:17:05.000000000 -0800
Please use Git to generate your patches. Those patches are generated to
be applied for patch -p2 while they should be generated to apply with
patch -p1. Just use Git, it will do the Right Thing (TM).
> @@ -408,6 +408,7 @@ source "package/cups/Config.in"
> if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
> source "package/dhcp/Config.in"
> endif
> +source "package/dhcpcd/Config.in"
> source "package/dhcpdump/Config.in"
> source "package/dnsmasq/Config.in"
> source "package/dropbear/Config.in"
>
> --- a/buildroot-2011.11/package/dhcpcd/Config.in 2013-03-07 07:23:25.000000000 -0800
> +++ b/buildroot-2011.11/package/dhcpcd/Config.in 2013-03-07 07:21:47.000000000 -0800
> @@ -0,0 +1,5 @@
> +config BR2_PACKAGE_DHCPCD
> + bool "dhcpcd"
> + help
> + an RFC2131 compliant DHCP client
> + NOTE: If uClibc, depends on UCLIBC_SUPPORT_AI_ADDRCONFIG=y
Indentation for bool/help: one tab.
Indentation for the help text: one tab + two spaces.
> --- a/buildroot-2011.11/package/dhcpcd/dhcpcd.mk 2013-03-07 07:13:09.000000000 -0800
> +++ b/buildroot-2011.11/package/dhcpcd/dhcpcd.mk 2013-03-07 07:00:54.000000000 -0800
> @@ -0,0 +1,46 @@
> +#############################################################
> +#
> +# dhcpcd
> +#
> +#############################################################
> +
> +DHCPCD_VERSION = 5.6.7
> +DHCPCD_SOURCE = dhcpcd-$(DHCPCD_VERSION).tar.bz2
> +DHCPCD_SITE = http://roy.marples.name/downloads/dhcpcd/
> +DHCPCD_LICENSE = BSD-2c
> +DHCPCD_INSTALL_STAGING = NO
Line not needed.
> +
> +CONFIG_ARGS += --target=$(BR2_GCC_TARGET_ARCH)
> +CONFIG_ARGS += --os=linux
All variables should be prefixed with the package name. However, in
this case it makes more sense to put those options directly in the
DHCPCD_CONFIGURE_CMDS.
> +ifeq ($(BR2_USE_MMU),n)
> + CONFIG_ARGS += --disable-fork
> +endif
BR2_USE_MMU will never be 'n'. It can be either 'y' or the empty
value. So:
ifeq ($(BR2_USE_MMU),)
DHCPCD_CONF_OPT += --disable-fork
endif
> +
> +ifeq ($(BR2_INET_IPV6),)
> + DHCPCD_CFLAGS += -UHASIPv6
> +endif
So when IPv6 is not available, you enable IPv6 in your package?
> +define DHCPCD_CONFIGURE_CMDS
> + (cd $(@D); \
> + ./configure $(CONFIG_ARGS) )
> +endef
Make this:
define DHCPCD_CONFIGURE_CMDS
(cd $(@D); \
./configure \
--target=$(GNU_TARGET_NAME) \
--os=linux \
$(DHCPCD_CONF_OPT))
endef
> +
> +define DHCPCD_BUILD_CMDS
> + $(MAKE) $(TARGET_CONFIGURE_OPTS) CC="$(TARGET_CC)" LD="$(TARGET_LD)" PATH=$(TARGET_PATH) $(DHCPCD_CFLAGS) -C $(@D) all
> +endef
No need to pass CC, LD and PATH, they are already part of
TARGET_CONFIGURE_OPTS.
> +define DHCPCD_INSTALL_TARGET_CMDS
> + $(INSTALL) -D -m 0755 $(@D)/dhcpcd $(TARGET_DIR)/usr/bin/dhcpcd
> + $(INSTALL) -D -m 0644 $(@D)/dhcpcd.conf $(TARGET_DIR)/etc/dhcpcd.conf
> +endef
> +
> +define DHCPCD_DEVICES
> + #/dev/foo c 666 0 0 42 0 - - -
> +endef
DHCPCD_DEVICES not needed.
> +define DHCPCD_PERMISSIONS
> + /usr/bin/dhcpcd f 4755 0 0 - - - - -
> +endef
Are you sure this is needed?
> +$(eval $(call GENTARGETS))
This should be $(eval $(generic-package)) if you want your patch to be
merged in Buildroot.
Also, please add a comment just above $(eval $(generic-package)) that
says something like: "Even though the package has a configure script,
it is not a configure script generated using the autotools, so we have
to use the generic package infrastructure".
Best regards,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2013-03-07 17:15 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-01 18:37 [Buildroot] adding dhcpcd John Stile
2013-03-01 18:47 ` Gustavo Zacarias
2013-03-05 16:21 ` John Stile
2013-03-05 18:47 ` Thomas Petazzoni
2013-03-06 18:01 ` John Stile
2013-03-06 18:58 ` Thomas Petazzoni
2013-03-06 19:50 ` John Stile
2013-03-06 20:05 ` Reuben Dowle
2013-03-06 20:08 ` Thomas Petazzoni
2013-03-06 20:41 ` John Stile
2013-03-06 20:54 ` Thomas Petazzoni
2013-03-06 21:02 ` John Stile
2013-03-06 21:14 ` Thomas Petazzoni
2013-03-06 21:20 ` John Stile
2013-03-06 21:29 ` Thomas Petazzoni
2013-03-06 22:57 ` John Stile
2013-03-06 23:48 ` Gilles Talis
2013-03-07 1:44 ` John Stile
2013-03-07 4:51 ` Gilles Talis
2013-03-07 7:31 ` John Stile
2013-03-07 8:53 ` Gilles Talis
2013-03-07 14:53 ` John Stile
2013-03-07 15:03 ` Thomas Petazzoni
2013-03-07 15:30 ` John Stile
2013-03-07 17:15 ` Thomas Petazzoni [this message]
2013-03-06 20:06 ` Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130307181525.340f8050@skate \
--to=thomas.petazzoni@free-electrons.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox