mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] Where do configure options for simple autotools packages come from?
@ 2013-10-08 12:44 Sander Stoks
  2013-10-08 13:01 ` Marc Kleine-Budde
  2013-10-08 13:20 ` Jürgen Beisert
  0 siblings, 2 replies; 6+ messages in thread
From: Sander Stoks @ 2013-10-08 12:44 UTC (permalink / raw)
  To: ptxdist


[-- Attachment #1.1: Type: text/plain, Size: 1041 bytes --]

Hello,

I am trying to understand how ptxdist decides which configuration options to pass.  My specific case is that I want to make a package for cifs-utils.  I could not find any rules file for this, but I read in the manual that if a source package is "autotoolized", i.e., contains a simple "configure" script, there is no need for a rules file - I assume it will simply call ./configure, with the necessary parameters to enable cross compiling.

However, it seems to add other things too, and I can't figure out where it finds these options.  When I do this:

ptxdist prepare cifs-utils

and look in the build-target/cifs-utils-5.2/config.log, I see that it has been configured with -disable-cifsupcall -disable-cifscreds -disable-cifsidmap -disable-cifsacl, among some other stuff.  But if I go into this directory myself and do a simple ./configure there, then these flags are *not* added.

So how does "ptxdist prepare" decide what exactly to add to the ./configure command line?

Kind thanks in advance,
Sander Stoks


[-- Attachment #1.2: Type: text/html, Size: 3668 bytes --]

[-- Attachment #2: Type: text/plain, Size: 48 bytes --]

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ptxdist] Where do configure options for simple autotools packages come from?
  2013-10-08 12:44 [ptxdist] Where do configure options for simple autotools packages come from? Sander Stoks
@ 2013-10-08 13:01 ` Marc Kleine-Budde
  2013-10-08 13:24   ` Sander Stoks
  2013-10-08 13:20 ` Jürgen Beisert
  1 sibling, 1 reply; 6+ messages in thread
From: Marc Kleine-Budde @ 2013-10-08 13:01 UTC (permalink / raw)
  To: ptxdist; +Cc: Sander Stoks


[-- Attachment #1.1: Type: text/plain, Size: 1508 bytes --]

On 10/08/2013 02:44 PM, Sander Stoks wrote:
> Hello,
> 
>  
> 
> I am trying to understand how ptxdist decides which configuration
> options to pass.  My specific case is that I want to make a package for
> cifs-utils.  I could not find any rules file for this, but I read in the
> manual that if a source package is “autotoolized”, i.e., contains a
> simple “configure” script, there is no need for a rules file – I assume
> it will simply call ./configure, with the necessary parameters to enable
> cross compiling.
> 
>  
> 
> However, it seems to add other things too, and I can’t figure out where
> it finds these options.  When I do this:
> 
>  
> 
> ptxdist prepare cifs-utils
> 
>  
> 
> and look in the build-target/cifs-utils-5.2/config.log, I see that it
> has been configured with –disable-cifsupcall –disable-cifscreds
> –disable-cifsidmap –disable-cifsacl, among some other stuff.  But if I
> go into this directory myself and do a simple ./configure there, then
> these flags are **not** added.
> 
>  
> 
> So how does “ptxdist prepare” decide what exactly to add to the
> ./configure command line?

In "rules/cifs-utils.make" line 32ff.

regards,
Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

[-- Attachment #2: Type: text/plain, Size: 48 bytes --]

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ptxdist] Where do configure options for simple autotools packages come from?
  2013-10-08 12:44 [ptxdist] Where do configure options for simple autotools packages come from? Sander Stoks
  2013-10-08 13:01 ` Marc Kleine-Budde
@ 2013-10-08 13:20 ` Jürgen Beisert
       [not found]   ` <24635EE72167A34F98C0A19CAD298DE7149E497D@SBS01.phenom.local>
  1 sibling, 1 reply; 6+ messages in thread
From: Jürgen Beisert @ 2013-10-08 13:20 UTC (permalink / raw)
  To: ptxdist; +Cc: Sander Stoks

Hi Sander,

On Tuesday 08 October 2013 14:44:29 Sander Stoks wrote:
> I am trying to understand how ptxdist decides which configuration options
> to pass.  My specific case is that I want to make a package for cifs-utils.
>  I could not find any rules file for this, but I read in the manual that if
> a source package is "autotoolized", i.e., contains a simple "configure"
> script, there is no need for a rules file

Where did you read there is "not need for a rule file"? Each package in PTXdist 
needs a rule file. The content of this rule may vary, depending on the 
package's build system.

> I assume it will simply call 
> ./configure, with the necessary parameters to enable cross compiling.
>
> However, it seems to add other things too, and I can't figure out where it
> finds these options.  When I do this:
>
> ptxdist prepare cifs-utils

As Marc has stated: there is already a cifs-utils package present in PTXdist. 
That is why it works in your case.

Regards,
Juergen

-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | http://www.pengutronix.de/  |

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ptxdist] Where do configure options for simple autotools packages come from?
  2013-10-08 13:01 ` Marc Kleine-Budde
@ 2013-10-08 13:24   ` Sander Stoks
  2013-10-08 13:35     ` Marc Kleine-Budde
  0 siblings, 1 reply; 6+ messages in thread
From: Sander Stoks @ 2013-10-08 13:24 UTC (permalink / raw)
  To: Marc Kleine-Budde, ptxdist

Marc wrote:

>> So how does “ptxdist prepare” decide what exactly to add to the 
>> ./configure command line?

> In "rules/cifs-utils.make" line 32ff.

Interesting - I thought all the rules files were under a local subdirectory.  There are a bunch of .in and .make files in the "rules" subdirectory (but not the cifs-utils ones).  I found these in /usr/local/lib/ptxdist-2013.04.0/rules.

I didn't want to edit those, but I found that simply copying the cifs-utils files to the "rules" directory in my own project hierarchy, successfully overrules the other ones.

However, it turns out these particular flags were not disabled for nothing: Some dependencies were missing, and they were disabled later on in the configuration anyway:

WARNING: krb5.h not found, consider installing krb5-libs-devel. Disabling cifs.upcall.

(same for keyutils-libs-devel and libwbclient-devel).

I guess I'll have to try and install packages for those as well...

Kind regards for the help so far,
Sander
-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ptxdist] Where do configure options for simple autotools packages come from?
  2013-10-08 13:24   ` Sander Stoks
@ 2013-10-08 13:35     ` Marc Kleine-Budde
  0 siblings, 0 replies; 6+ messages in thread
From: Marc Kleine-Budde @ 2013-10-08 13:35 UTC (permalink / raw)
  To: ptxdist; +Cc: Sander Stoks


[-- Attachment #1.1: Type: text/plain, Size: 1544 bytes --]

On 10/08/2013 03:24 PM, Sander Stoks wrote:
> Marc wrote:
> 
>>> So how does “ptxdist prepare” decide what exactly to add to the 
>>> ./configure command line?
> 
>> In "rules/cifs-utils.make" line 32ff.
> 
> Interesting - I thought all the rules files were under a local 
> subdirectory.  There are a bunch of .in and .make files in the 
> "rules" subdirectory (but not the cifs-utils ones).  I found these
> in /usr/local/lib/ptxdist-2013.04.0/rules.
> 
> I didn't want to edit those, but I found that simply copying the
> cifs-utils files to the "rules" directory in my own project
> hierarchy, successfully overrules the other ones.

Local rules override global ones, that's intended :)

> However, it turns out these particular flags were not disabled for
> nothing: Some dependencies were missing, and they were disabled later
> on in the configuration anyway:
> 
> WARNING: krb5.h not found, consider installing krb5-libs-devel.
> Disabling cifs.upcall.
> 
> (same for keyutils-libs-devel and libwbclient-devel).
> 
> I guess I'll have to try and install packages for those as well...

You figured out everything yourself so far.

You can create new packages with: "ptxdist newpackage target" in your
local BSP dir.

Marc
-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

[-- Attachment #2: Type: text/plain, Size: 48 bytes --]

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ptxdist] Where do configure options for simple autotools packages come from?
       [not found]   ` <24635EE72167A34F98C0A19CAD298DE7149E497D@SBS01.phenom.local>
@ 2013-10-08 13:58     ` Jürgen Beisert
  0 siblings, 0 replies; 6+ messages in thread
From: Jürgen Beisert @ 2013-10-08 13:58 UTC (permalink / raw)
  To: ptxdist; +Cc: Sander Stoks

Hi Sander,

please keep the mailing list on CC.

On Tuesday 08 October 2013 15:30:23 Sander Stoks wrote:
> > Where did you read there is "not need for a rule file"? Each package in
> > PTXdist needs a rule file. The content of this rule may vary, depending
> > on the package's build system.
>
> On page 34 of the english manual, it is explained under "Adding new
> Packages",
>
> "In this example we expect an autotoolized source package. E.g. to prepare
> the build, the archive comes with a configure script. This is the default
> case for PTXdist. So, there is no need to modify the rule file and we can
> simply run ptxdist prepare foo"

I have written there is "no need to modify the rule file", I haven't 
written "there is no need for a rule file". ;)

> Since I could not find the relevant rules file (looking in the wrong place)
> I thought that maybe there was a "generic" rule for any package containing
> a ./configure script.

There is generic code what has to be done in each stage. If you do not provide 
your own stage code in your rule file, the generic code will be used instead. 
For (perfect) autotoolized packages the generic stage code can be used.

> However, I was suspicious about this since there were definitely options
> being passed to ./configure.

To forward special options to the configure stage you just have to provide the 
<yourpackage-name>_CONF_OPT variable. But no code. The generic code uses the 
*_CONF_OPT content automagically.

> Getting the required dependencies to work is a simple matter of defining
> packages for those (in this case, krb5-libs-devel, keyutils-libs-devel, and
> libwbclient-devel) and selecting those?

Dependencies are handled inside the *.in files via "select". If you enable a 
package and this package needs another package, the enabled package must 
select the package it depends on. PTXdist also uses these "select" statements 
to define the build order of the packages.

Regards,
Juergen

-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | http://www.pengutronix.de/  |

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-10-08 13:58 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-08 12:44 [ptxdist] Where do configure options for simple autotools packages come from? Sander Stoks
2013-10-08 13:01 ` Marc Kleine-Budde
2013-10-08 13:24   ` Sander Stoks
2013-10-08 13:35     ` Marc Kleine-Budde
2013-10-08 13:20 ` Jürgen Beisert
     [not found]   ` <24635EE72167A34F98C0A19CAD298DE7149E497D@SBS01.phenom.local>
2013-10-08 13:58     ` Jürgen Beisert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox