unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Building Package and autoreconf not found
@ 2023-10-23 19:12 Jesse Millwood
  2023-10-26 14:21 ` Tomas Volf
  0 siblings, 1 reply; 3+ messages in thread
From: Jesse Millwood @ 2023-10-23 19:12 UTC (permalink / raw)
  To: help-guix

Hello,

I am trying to write a Guix package but I have to add a build phase to 
the gnu build system.

I have the following package scm:

(use-modules
  (guix packages)
  (guix git-download)
  (guix licenses)
  (guix profiles)
  (guix build-system gnu)
  (guix build-system python)
  (guix build utils))


(package
  (name "crosstool-ng")
  (version "1.26.0")
  (source (origin
           (method git-fetch)
           (uri (git-reference
                 (url "https://github.com/crosstool-ng/crosstool-ng.git")
                 (commit (string-append "crosstool-ng-" version))))
           (sha256
            (base32
"04z7zwhxfbjqrd4j16lviilppsd8phwi8zv2rs4jpkmqni6856j1")
            )
           ))
  (build-system gnu-build-system)
  (arguments
   '(#:phases (modify-phases %standard-phases
                             (add-before 'configure 'bootstrap
                                         (lambda* (#:key outputs 
#:allow-other-keys)
                                                  (invoke 
"./bootstrap"))))))
  (synopsis "A versatile (cross-)toolchain generator.")
  (description "A versatile (cross-)toolchain generator.")
  (home-page "https://crosstool-ng.github.io/docs/")
  (license gpl3+)
  )


I need to call the "bootstrap" script before the configure phase. From 
what I can tell from the log the bootstrap script is called, however I 
get the following error:

INFO  :: *** Gathering the list of data files to install
INFO  :: *** Running autoreconf
./bootstrap: line 835: autoreconf: command not found
INFO  :: *** Done!
phase `bootstrap' succeeded after 105.5 seconds

My understanding that the autotools tools were included in the "guix 
build-system gnu" module. Is there some way I have to provide my 
bootstrap phase with the autotools packages?


For some background, this is my first time using guix and guile so I'm 
am kind of banging my head through the manual but I got a little stuck 
here.

Thanks.



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

* Re: Building Package and autoreconf not found
  2023-10-23 19:12 Building Package and autoreconf not found Jesse Millwood
@ 2023-10-26 14:21 ` Tomas Volf
  2023-10-26 14:29   ` Jesse Millwood
  0 siblings, 1 reply; 3+ messages in thread
From: Tomas Volf @ 2023-10-26 14:21 UTC (permalink / raw)
  To: Jesse Millwood; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 2419 bytes --]

On 2023-10-23 15:12:59 -0400, Jesse Millwood wrote:
> Hello,
> 
> I am trying to write a Guix package but I have to add a build phase to the
> gnu build system.
> 
> I have the following package scm:
> 
> (use-modules
>  (guix packages)
>  (guix git-download)
>  (guix licenses)
>  (guix profiles)
>  (guix build-system gnu)
>  (guix build-system python)
>  (guix build utils))
> 
> 
> (package
>  (name "crosstool-ng")
>  (version "1.26.0")
>  (source (origin
>           (method git-fetch)
>           (uri (git-reference
>                 (url "https://github.com/crosstool-ng/crosstool-ng.git")
>                 (commit (string-append "crosstool-ng-" version))))
>           (sha256
>            (base32
> "04z7zwhxfbjqrd4j16lviilppsd8phwi8zv2rs4jpkmqni6856j1")
>            )
>           ))
>  (build-system gnu-build-system)
>  (arguments
>   '(#:phases (modify-phases %standard-phases
>                             (add-before 'configure 'bootstrap
>                                         (lambda* (#:key outputs
> #:allow-other-keys)
>                                                  (invoke "./bootstrap"))))))
>  (synopsis "A versatile (cross-)toolchain generator.")
>  (description "A versatile (cross-)toolchain generator.")
>  (home-page "https://crosstool-ng.github.io/docs/")
>  (license gpl3+)
>  )
> 
> 
> I need to call the "bootstrap" script before the configure phase. From what
> I can tell from the log the bootstrap script is called, however I get the
> following error:
> 
> INFO  :: *** Gathering the list of data files to install
> INFO  :: *** Running autoreconf
> ./bootstrap: line 835: autoreconf: command not found
> INFO  :: *** Done!
> phase `bootstrap' succeeded after 105.5 seconds
> 
> My understanding that the autotools tools were included in the "guix
> build-system gnu" module. Is there some way I have to provide my bootstrap
> phase with the autotools packages?

I believe autoreconf is not usually required for building packages from a
distribution archive.  Try to add autoconf into a native-inputs.

> 
> 
> For some background, this is my first time using guix and guile so I'm am
> kind of banging my head through the manual but I got a little stuck here.
> 
> Thanks.
> 
>

T.

-- 
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: Building Package and autoreconf not found
  2023-10-26 14:21 ` Tomas Volf
@ 2023-10-26 14:29   ` Jesse Millwood
  0 siblings, 0 replies; 3+ messages in thread
From: Jesse Millwood @ 2023-10-26 14:29 UTC (permalink / raw)
  To: Jesse Millwood, help-guix

Thanks Tomas,

That worked. I also had to add a phase before configure to patch the 
packages' gen-version-info script because it was in a location that the 
built-in bootstrap phase couldn't detect. Then I could drop my bootstrap 
phase too.

Jesse

On 10/26/23 10:21, Tomas Volf wrote:
> On 2023-10-23 15:12:59 -0400, Jesse Millwood wrote:
>> Hello,
>>
>> I am trying to write a Guix package but I have to add a build phase to the
>> gnu build system.
>>
>> I have the following package scm:
>>
>> (use-modules
>>   (guix packages)
>>   (guix git-download)
>>   (guix licenses)
>>   (guix profiles)
>>   (guix build-system gnu)
>>   (guix build-system python)
>>   (guix build utils))
>>
>>
>> (package
>>   (name "crosstool-ng")
>>   (version "1.26.0")
>>   (source (origin
>>            (method git-fetch)
>>            (uri (git-reference
>>                  (url "https://github.com/crosstool-ng/crosstool-ng.git")
>>                  (commit (string-append "crosstool-ng-" version))))
>>            (sha256
>>             (base32
>> "04z7zwhxfbjqrd4j16lviilppsd8phwi8zv2rs4jpkmqni6856j1")
>>             )
>>            ))
>>   (build-system gnu-build-system)
>>   (arguments
>>    '(#:phases (modify-phases %standard-phases
>>                              (add-before 'configure 'bootstrap
>>                                          (lambda* (#:key outputs
>> #:allow-other-keys)
>>                                                   (invoke "./bootstrap"))))))
>>   (synopsis "A versatile (cross-)toolchain generator.")
>>   (description "A versatile (cross-)toolchain generator.")
>>   (home-page "https://crosstool-ng.github.io/docs/")
>>   (license gpl3+)
>>   )
>>
>>
>> I need to call the "bootstrap" script before the configure phase. From what
>> I can tell from the log the bootstrap script is called, however I get the
>> following error:
>>
>> INFO  :: *** Gathering the list of data files to install
>> INFO  :: *** Running autoreconf
>> ./bootstrap: line 835: autoreconf: command not found
>> INFO  :: *** Done!
>> phase `bootstrap' succeeded after 105.5 seconds
>>
>> My understanding that the autotools tools were included in the "guix
>> build-system gnu" module. Is there some way I have to provide my bootstrap
>> phase with the autotools packages?
> I believe autoreconf is not usually required for building packages from a
> distribution archive.  Try to add autoconf into a native-inputs.
>
>>
>> For some background, this is my first time using guix and guile so I'm am
>> kind of banging my head through the manual but I got a little stuck here.
>>
>> Thanks.
>>
>>
> T.
>


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

end of thread, other threads:[~2023-10-28 23:18 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-23 19:12 Building Package and autoreconf not found Jesse Millwood
2023-10-26 14:21 ` Tomas Volf
2023-10-26 14:29   ` Jesse Millwood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).