* [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file @ 2015-04-05 19:48 Ryan Barnett 2015-04-05 19:48 ` [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension Ryan Barnett 2015-04-05 21:02 ` [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Yann E. MORIN 0 siblings, 2 replies; 6+ messages in thread From: Ryan Barnett @ 2015-04-05 19:48 UTC (permalink / raw) To: buildroot Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> --- package/i2c-tools/i2c-tools.hash | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 package/i2c-tools/i2c-tools.hash diff --git a/package/i2c-tools/i2c-tools.hash b/package/i2c-tools/i2c-tools.hash new file mode 100644 index 0000000..a6c376f --- /dev/null +++ b/package/i2c-tools/i2c-tools.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 14d4d7d60d1c12e43f2befe239c682a5c44c27682f153d4b58c1e392d2db1700 i2c-tools-3.1.1.tar.bz2 -- 1.9.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension 2015-04-05 19:48 [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Ryan Barnett @ 2015-04-05 19:48 ` Ryan Barnett 2015-04-05 21:10 ` Yann E. MORIN 2015-04-05 21:02 ` [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Yann E. MORIN 1 sibling, 1 reply; 6+ messages in thread From: Ryan Barnett @ 2015-04-05 19:48 UTC (permalink / raw) To: buildroot Add a config option to build the python bindings for i2c-tools - py-smbus. The steps for building the python bindings is the same as the distutil steps that are a part of the python infrastructure. Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> CC: Tjeerd Pinkert <t.j.pinkert@vu.nl> CC: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com> CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> CC: Baruch Siach <baruch@tkos.co.il> --- Changes v1 -> v2: - Fixed spelling in config entry - Utilize the python infrastructure variables for environment and build/install opts (suggested by Thomas P) - Only support python2.7 since this is not compatabile with python3 (suggested by Baruch) --- package/i2c-tools/Config.in | 13 +++++++++++++ package/i2c-tools/i2c-tools.mk | 27 +++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/package/i2c-tools/Config.in b/package/i2c-tools/Config.in index e83dbd6..6426f30 100644 --- a/package/i2c-tools/Config.in +++ b/package/i2c-tools/Config.in @@ -8,3 +8,16 @@ config BR2_PACKAGE_I2C_TOOLS EEPROM decoding scripts, and more. http://www.lm-sensors.org/wiki/I2CTools + +if BR2_PACKAGE_I2C_TOOLS + +config BR2_PACKAGE_I2C_TOOLS_PYSMBUS + bool "py-smbus" + depends on BR2_PACKAGE_PYTHON + help + Python bindings to smbus from the i2c-tools package. + +comment "i2c-tools py-smbus depends on python2" + depends on !BR2_PACKAGE_PYTHON + +endif diff --git a/package/i2c-tools/i2c-tools.mk b/package/i2c-tools/i2c-tools.mk index 0115e22..ec2995f 100644 --- a/package/i2c-tools/i2c-tools.mk +++ b/package/i2c-tools/i2c-tools.mk @@ -21,4 +21,31 @@ define I2C_TOOLS_INSTALL_TARGET_CMDS done endef +# BASE_ENV taken from PKG_PYTHON_DISTUTILS_ENV in package/pkg-python.mk +I2C_TOOLS_PYTHON_BASE_ENV = \ + $(PKG_PYTHON_DISTUTILS_ENV) \ + CFLAGS="$(TARGET_CFLAGS) -I../include" + +# Build/install steps mirror the distutil python package type in the python package +# infrastructure +ifeq ($(BR2_PACKAGE_I2C_TOOLS_PYSMBUS),y) +I2C_TOOLS_DEPENDENCIES += python + +define I2C_TOOLS_BUILD_PYSMBUS + (cd $(@D)/py-smbus; \ + $(I2C_TOOLS_PYTHON_BASE_ENV) \ + $(HOST_DIR)/usr/bin/python setup.py build \ + $(PKG_PYTHON_DISTUTILS_BUILD_OPTS)) +endef +I2C_TOOLS_POST_BUILD_HOOKS += I2C_TOOLS_BUILD_PYSMBUS + +define I2C_TOOLS_INSTALL_PYSMBUS + (cd $(@D)/py-smbus; \ + $(I2C_TOOLS_PYTHON_BASE_ENV) \ + $(HOST_DIR)/usr/bin/python setup.py install \ + $(PKG_PYTHON_DISTUTILS_INSTALL_TARGET_OPTS)) +endef +I2C_TOOLS_POST_INSTALL_TARGET_HOOKS += I2C_TOOLS_INSTALL_PYSMBUS +endif + $(eval $(generic-package)) -- 1.9.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension 2015-04-05 19:48 ` [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension Ryan Barnett @ 2015-04-05 21:10 ` Yann E. MORIN 2015-04-05 21:33 ` Ryan Barnett 0 siblings, 1 reply; 6+ messages in thread From: Yann E. MORIN @ 2015-04-05 21:10 UTC (permalink / raw) To: buildroot Ryan, All, On 2015-04-05 14:48 -0500, Ryan Barnett spake thusly: > Add a config option to build the python bindings for i2c-tools - > py-smbus. The steps for building the python bindings is the same as > the distutil steps that are a part of the python infrastructure. > > Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> > CC: Tjeerd Pinkert <t.j.pinkert@vu.nl> > CC: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com> > CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > CC: Baruch Siach <baruch@tkos.co.il> > > --- > Changes v1 -> v2: > - Fixed spelling in config entry > - Utilize the python infrastructure variables for environment and > build/install opts (suggested by Thomas P) > - Only support python2.7 since this is not compatabile with python3 > (suggested by Baruch) > --- > package/i2c-tools/Config.in | 13 +++++++++++++ > package/i2c-tools/i2c-tools.mk | 27 +++++++++++++++++++++++++++ > 2 files changed, 40 insertions(+) > > diff --git a/package/i2c-tools/Config.in b/package/i2c-tools/Config.in > index e83dbd6..6426f30 100644 > --- a/package/i2c-tools/Config.in > +++ b/package/i2c-tools/Config.in > @@ -8,3 +8,16 @@ config BR2_PACKAGE_I2C_TOOLS > EEPROM decoding scripts, and more. > > http://www.lm-sensors.org/wiki/I2CTools > + > +if BR2_PACKAGE_I2C_TOOLS > + > +config BR2_PACKAGE_I2C_TOOLS_PYSMBUS > + bool "py-smbus" > + depends on BR2_PACKAGE_PYTHON > + help > + Python bindings to smbus from the i2c-tools package. Well, like Baruch said, I would not add such option, and just build the Python binding if Python is enabled. > +comment "i2c-tools py-smbus depends on python2" > + depends on !BR2_PACKAGE_PYTHON > + > +endif > diff --git a/package/i2c-tools/i2c-tools.mk b/package/i2c-tools/i2c-tools.mk > index 0115e22..ec2995f 100644 > --- a/package/i2c-tools/i2c-tools.mk > +++ b/package/i2c-tools/i2c-tools.mk > @@ -21,4 +21,31 @@ define I2C_TOOLS_INSTALL_TARGET_CMDS > done > endef > > +# BASE_ENV taken from PKG_PYTHON_DISTUTILS_ENV in package/pkg-python.mk > +I2C_TOOLS_PYTHON_BASE_ENV = \ > + $(PKG_PYTHON_DISTUTILS_ENV) \ > + CFLAGS="$(TARGET_CFLAGS) -I../include" Move this define into the conditional, below. > +# Build/install steps mirror the distutil python package type in the python package > +# infrastructure > +ifeq ($(BR2_PACKAGE_I2C_TOOLS_PYSMBUS),y) Since you'd no longer have an option to enable py-smbus, that conditional would become: ifeq ($(BR2_PACKAGE_PYTHON),y) Also, empty line after the ifeq. > +I2C_TOOLS_DEPENDENCIES += python > + > +define I2C_TOOLS_BUILD_PYSMBUS > + (cd $(@D)/py-smbus; \ > + $(I2C_TOOLS_PYTHON_BASE_ENV) \ > + $(HOST_DIR)/usr/bin/python setup.py build \ > + $(PKG_PYTHON_DISTUTILS_BUILD_OPTS)) > +endef > +I2C_TOOLS_POST_BUILD_HOOKS += I2C_TOOLS_BUILD_PYSMBUS I'd keep the define, ditch the hook, and shoehorn the macro directly into the build commands, since this is a generic package: define I2C_TOOLS_BUILD_CMDS $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(I2C_TOOLS_BUILD_PYSMBUS) endef > +define I2C_TOOLS_INSTALL_PYSMBUS > + (cd $(@D)/py-smbus; \ > + $(I2C_TOOLS_PYTHON_BASE_ENV) \ > + $(HOST_DIR)/usr/bin/python setup.py install \ > + $(PKG_PYTHON_DISTUTILS_INSTALL_TARGET_OPTS)) > +endef > +I2C_TOOLS_POST_INSTALL_TARGET_HOOKS += I2C_TOOLS_INSTALL_PYSMBUS Ditto, include that directly in the install commands. > +endif I like it when there is a comment after the endif, refering to the corresponding ifeq: endif # BR2_PACKAGE_PYTHON This helps when the conditional block if more than a few lines long. Also, empty line before the endif. Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension 2015-04-05 21:10 ` Yann E. MORIN @ 2015-04-05 21:33 ` Ryan Barnett 2015-04-05 21:47 ` Yann E. MORIN 0 siblings, 1 reply; 6+ messages in thread From: Ryan Barnett @ 2015-04-05 21:33 UTC (permalink / raw) To: buildroot Yann/Baruch, On Sun, Apr 5, 2015 at 4:10 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > Ryan, All, > > On 2015-04-05 14:48 -0500, Ryan Barnett spake thusly: >> Add a config option to build the python bindings for i2c-tools - >> py-smbus. The steps for building the python bindings is the same as >> the distutil steps that are a part of the python infrastructure. >> >> Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> >> CC: Tjeerd Pinkert <t.j.pinkert@vu.nl> >> CC: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com> >> CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> >> CC: Baruch Siach <baruch@tkos.co.il> >> >> --- >> Changes v1 -> v2: >> - Fixed spelling in config entry >> - Utilize the python infrastructure variables for environment and >> build/install opts (suggested by Thomas P) >> - Only support python2.7 since this is not compatabile with python3 >> (suggested by Baruch) >> --- >> package/i2c-tools/Config.in | 13 +++++++++++++ >> package/i2c-tools/i2c-tools.mk | 27 +++++++++++++++++++++++++++ >> 2 files changed, 40 insertions(+) >> >> diff --git a/package/i2c-tools/Config.in b/package/i2c-tools/Config.in >> index e83dbd6..6426f30 100644 >> --- a/package/i2c-tools/Config.in >> +++ b/package/i2c-tools/Config.in >> @@ -8,3 +8,16 @@ config BR2_PACKAGE_I2C_TOOLS >> EEPROM decoding scripts, and more. >> >> http://www.lm-sensors.org/wiki/I2CTools >> + >> +if BR2_PACKAGE_I2C_TOOLS >> + >> +config BR2_PACKAGE_I2C_TOOLS_PYSMBUS >> + bool "py-smbus" >> + depends on BR2_PACKAGE_PYTHON >> + help >> + Python bindings to smbus from the i2c-tools package. > > Well, like Baruch said, I would not add such option, and just build the > Python binding if Python is enabled. I kept it for this version because as I have said on IRC - I didn't even know there were python bindings available for i2c-tools since their wiki site makes no mention of this. However, since now more than one person would prefer this, I will change it so the python bindings are automatically installed. I would like to have some sort of notification about this in the configurator but I don't really like having a comment for this. Plus I have spent more time on this feature than I would have liked so I will not modify Config.in at all. >> +I2C_TOOLS_DEPENDENCIES += python >> + >> +define I2C_TOOLS_BUILD_PYSMBUS >> + (cd $(@D)/py-smbus; \ >> + $(I2C_TOOLS_PYTHON_BASE_ENV) \ >> + $(HOST_DIR)/usr/bin/python setup.py build \ >> + $(PKG_PYTHON_DISTUTILS_BUILD_OPTS)) >> +endef >> +I2C_TOOLS_POST_BUILD_HOOKS += I2C_TOOLS_BUILD_PYSMBUS > > I'd keep the define, ditch the hook, and shoehorn the macro directly > into the build commands, since this is a generic package: > > define I2C_TOOLS_BUILD_CMDS > $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) > $(I2C_TOOLS_BUILD_PYSMBUS) > endef OK I will do this since when you put it that way I prefer this too. However, it isn't really clear that you are suppose to do something like this from the manual as I debated this issue. To use hooks or not to use hooks, that is the question... :) >> +define I2C_TOOLS_INSTALL_PYSMBUS >> + (cd $(@D)/py-smbus; \ >> + $(I2C_TOOLS_PYTHON_BASE_ENV) \ >> + $(HOST_DIR)/usr/bin/python setup.py install \ >> + $(PKG_PYTHON_DISTUTILS_INSTALL_TARGET_OPTS)) >> +endef >> +I2C_TOOLS_POST_INSTALL_TARGET_HOOKS += I2C_TOOLS_INSTALL_PYSMBUS > > Ditto, include that directly in the install commands. > >> +endif > > I like it when there is a comment after the endif, refering to the > corresponding ifeq: > > endif # BR2_PACKAGE_PYTHON > > This helps when the conditional block if more than a few lines long. > > Also, empty line before the endif. Will do as I do like the readability of this too. Thanks, -Ryan ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension 2015-04-05 21:33 ` Ryan Barnett @ 2015-04-05 21:47 ` Yann E. MORIN 0 siblings, 0 replies; 6+ messages in thread From: Yann E. MORIN @ 2015-04-05 21:47 UTC (permalink / raw) To: buildroot Ryan, All, On 2015-04-05 16:33 -0500, Ryan Barnett spake thusly: > On Sun, Apr 5, 2015 at 4:10 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > > Ryan, All, > > > > On 2015-04-05 14:48 -0500, Ryan Barnett spake thusly: > >> Add a config option to build the python bindings for i2c-tools - > >> py-smbus. The steps for building the python bindings is the same as > >> the distutil steps that are a part of the python infrastructure. > >> > >> Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> > >> CC: Tjeerd Pinkert <t.j.pinkert@vu.nl> > >> CC: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com> > >> CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > >> CC: Baruch Siach <baruch@tkos.co.il> > >> > >> --- > >> Changes v1 -> v2: > >> - Fixed spelling in config entry > >> - Utilize the python infrastructure variables for environment and > >> build/install opts (suggested by Thomas P) > >> - Only support python2.7 since this is not compatabile with python3 > >> (suggested by Baruch) > >> --- > >> package/i2c-tools/Config.in | 13 +++++++++++++ > >> package/i2c-tools/i2c-tools.mk | 27 +++++++++++++++++++++++++++ > >> 2 files changed, 40 insertions(+) > >> > >> diff --git a/package/i2c-tools/Config.in b/package/i2c-tools/Config.in > >> index e83dbd6..6426f30 100644 > >> --- a/package/i2c-tools/Config.in > >> +++ b/package/i2c-tools/Config.in > >> @@ -8,3 +8,16 @@ config BR2_PACKAGE_I2C_TOOLS > >> EEPROM decoding scripts, and more. > >> > >> http://www.lm-sensors.org/wiki/I2CTools > >> + > >> +if BR2_PACKAGE_I2C_TOOLS > >> + > >> +config BR2_PACKAGE_I2C_TOOLS_PYSMBUS > >> + bool "py-smbus" > >> + depends on BR2_PACKAGE_PYTHON > >> + help > >> + Python bindings to smbus from the i2c-tools package. > > > > Well, like Baruch said, I would not add such option, and just build the > > Python binding if Python is enabled. > > I kept it for this version because as I have said on IRC - I didn't > even know there were python bindings available for i2c-tools since > their wiki site makes no mention of this. However, since now more than > one person would prefer this, I will change it so the python bindings > are automatically installed. > > I would like to have some sort of notification about this in the > configurator but I don't really like having a comment for this. Plus I > have spent more time on this feature than I would have liked so I will > not modify Config.in at all. OK, that's fine with me that you don't want to go any further with that. An interested party can get the patch and resubmit with the change later on. > >> +I2C_TOOLS_DEPENDENCIES += python > >> + > >> +define I2C_TOOLS_BUILD_PYSMBUS > >> + (cd $(@D)/py-smbus; \ > >> + $(I2C_TOOLS_PYTHON_BASE_ENV) \ > >> + $(HOST_DIR)/usr/bin/python setup.py build \ > >> + $(PKG_PYTHON_DISTUTILS_BUILD_OPTS)) > >> +endef > >> +I2C_TOOLS_POST_BUILD_HOOKS += I2C_TOOLS_BUILD_PYSMBUS > > > > I'd keep the define, ditch the hook, and shoehorn the macro directly > > into the build commands, since this is a generic package: > > > > define I2C_TOOLS_BUILD_CMDS > > $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) > > $(I2C_TOOLS_BUILD_PYSMBUS) > > endef > > OK I will do this since when you put it that way I prefer this too. > However, it isn't really clear that you are suppose to do something > like this from the manual as I debated this issue. To use hooks or not > to use hooks, that is the question... :) Well, for generic packages, there's no much point in using hooks to start with, since you handle commands manually anyway. Hooks are most interesting for the other pkg-infras, like autotools, cmake et al. since you do not have control of the build/install commands. Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file 2015-04-05 19:48 [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Ryan Barnett 2015-04-05 19:48 ` [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension Ryan Barnett @ 2015-04-05 21:02 ` Yann E. MORIN 1 sibling, 0 replies; 6+ messages in thread From: Yann E. MORIN @ 2015-04-05 21:02 UTC (permalink / raw) To: buildroot Ryan, All, On 2015-04-05 14:48 -0500, Ryan Barnett spake thusly: > Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> > --- > package/i2c-tools/i2c-tools.hash | 2 ++ > 1 file changed, 2 insertions(+) > create mode 100644 package/i2c-tools/i2c-tools.hash > > diff --git a/package/i2c-tools/i2c-tools.hash b/package/i2c-tools/i2c-tools.hash > new file mode 100644 > index 0000000..a6c376f > --- /dev/null > +++ b/package/i2c-tools/i2c-tools.hash > @@ -0,0 +1,2 @@ > +# locally computed hash > +sha256 14d4d7d60d1c12e43f2befe239c682a5c44c27682f153d4b58c1e392d2db1700 i2c-tools-3.1.1.tar.bz2 Manually verified the hash Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20150405/b0292970/attachment.asc> ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-04-05 21:47 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-04-05 19:48 [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Ryan Barnett 2015-04-05 19:48 ` [Buildroot] [PATCH v2 2/2] i2c-tools: add support to build python extension Ryan Barnett 2015-04-05 21:10 ` Yann E. MORIN 2015-04-05 21:33 ` Ryan Barnett 2015-04-05 21:47 ` Yann E. MORIN 2015-04-05 21:02 ` [Buildroot] [PATCH v2 1/2] i2c-tools: add hash file Yann E. MORIN
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox