Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 643128 - sci-libs/fftw-9999: No rule to make target 'n1_2.c', needed by 'all'
Summary: sci-libs/fftw-9999: No rule to make target 'n1_2.c', needed by 'all'
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal major (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-02 16:40 UTC by Roman
Modified: 2018-01-11 09:54 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
All infos which emerge did propose. (fftw.infos.tar.bz2,42.04 KB, application/x-bzip2)
2018-01-02 16:40 UTC, Roman
Details
fftw-9999.ebuild patch (fftw-9999.patch,3.28 KB, patch)
2018-01-10 18:27 UTC, Roman
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Roman 2018-01-02 16:40:33 UTC
Created attachment 512728 [details]
All infos which emerge did propose.

Hello,

while compiling fftw-9999 the following error occurs:

make[4]: Entering directory '/var/tmp/portage/sci-libs/fftw-9999/work/fftw-9999-single-abi_x86_64.amd64/dft/scalar/codelets'
make[4]: *** No rule to make target 'n1_2.c', needed by 'all'.  Stop.
make[4]: Leaving directory '/var/tmp/portage/sci-libs/fftw-9999/work/fftw-9999-single-abi_x86_64.amd64/dft/scalar/codelets'
make[3]: *** [Makefile:469: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/sci-libs/fftw-9999/work/fftw-9999-single-abi_x86_64.amd64/dft/scalar'
make[2]: *** [Makefile:501: all-recursive] Error 1
make[2]: Leaving directory '/var/tmp/portage/sci-libs/fftw-9999/work/fftw-9999-single-abi_x86_64.amd64/dft'
make[1]: *** [Makefile:706: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/sci-libs/fftw-9999/work/fftw-9999-single-abi_x86_64.amd64'
make: *** [Makefile:550: all] Error 2
Comment 1 Christoph Junghans (RETIRED) gentoo-dev 2018-01-05 16:20:37 UTC
Looking at https://github.com/FFTW/fftw3/blob/master/dft/scalar/codelets/Makefile.am#L66, I guess we need to enable maintainer mode for fftw-9999, can you try to add --enable-maintainer-mode’ to EXTRA_ECONF in your make.conf?
Comment 2 Roman 2018-01-08 16:59:29 UTC
(In reply to Christoph Junghans from comment #1)
> Looking at
> https://github.com/FFTW/fftw3/blob/master/dft/scalar/codelets/Makefile.
> am#L66, I guess we need to enable maintainer mode for fftw-9999, can you try
> to add --enable-maintainer-mode’ to EXTRA_ECONF in your make.conf?

Unfortunately this hack didn't work. The same error still occurs.
I added this line inside make.conf:
EXTRA_ECONF="--enable-maintainer-mode"

Best regards,
Roman
Comment 3 Roman 2018-01-08 22:13:51 UTC
From the README I've read that the following tools should be installed, when the source is from the git repository:
ocaml, ocamlbuild, autoconf, automake, indent, and libtool

I was missing ocaml, ocamlbuild and indent. I installed these three.

Next in the README:
When the source is from the git repository "sh ./bootstrap.sh" should be
started, which also does call ./configure as:
./configure --disable-shared --enable-maintainer-mode --enable-threads $*
Then make works.

The ebuild script should be altered according to the README file.

Best regards,
Roman
Comment 4 Christoph Junghans (RETIRED) gentoo-dev 2018-01-08 23:14:18 UTC
(In reply to Roman from comment #3)
> From the README I've read that the following tools should be installed, when
> the source is from the git repository:
> ocaml, ocamlbuild, autoconf, automake, indent, and libtool
> 
> I was missing ocaml, ocamlbuild and indent. I installed these three.
> 
> Next in the README:
> When the source is from the git repository "sh ./bootstrap.sh" should be
> started, which also does call ./configure as:
> ./configure --disable-shared --enable-maintainer-mode --enable-threads $*
> Then make works.
EXTRA_ECONF should have basically done that!

> 
> The ebuild script should be altered according to the README file.
Can you please submit a patch here or a pull request at https://github.com/gentoo/gentoo adding the above mentioned dependencies and conmfigure options?
Comment 5 David Seifert gentoo-dev 2018-01-08 23:33:02 UTC
Maintainer mode should be removed, it's an historic mistake and a massive anti-pattern
Comment 6 Christoph Junghans (RETIRED) gentoo-dev 2018-01-09 00:24:00 UTC
(In reply to David Seifert from comment #5)
> Maintainer mode should be removed, it's an historic mistake and a massive
> anti-pattern
That is a good point, please file an issue upstream here: https://github.com/FFTW/fftw3/issues
Comment 7 Roman 2018-01-10 00:15:51 UTC
(In reply to Christoph Junghans from comment #4)
> > The ebuild script should be altered according to the README file.
> Can you please submit a patch here or a pull request at
> https://github.com/gentoo/gentoo adding the above mentioned dependencies and
> conmfigure options?

These tests should be inside fftw-9999.ebuild:
RDEPEND="                                                       
        mpi? ( virtual/mpi )"                               
DEPEND="${RDEPEND}                                              DEPEND="${RDEPEND}
        test? ( dev-lang/perl )"                             
        if [[ ${PV} = *9999 ]]; then                          
           DEPEND="${DEPEND}                                  
           test? ( dev-lang/ocaml )                           
           test? ( dev-ml/ocamlbuild )                        
           test? ( dev-util/indent )                          
           test? ( sys-devel/libtool )                        
           test? ( sys-devel/autoconf )                       
           test? ( sys-devel/automake )                       
           test? ( media-gfx/xfig )"                          
        fi                                                    

Then as configuration "sh bootstrap.sh" should be started with ${ECONF_SOURCE}
Then a simple make and a make install.

By the way this is only for the git version of fftw.

I've tested it exactly this way and it worked. I've done it by hand, because when I called ./configure ${ECONF_SOURCE} it wanted Makefile.in instead of Makefile.am files. The MULTIBUILD_ID I configured as "quad-" and the mandatory --enable-maintainer-mode I put into local myconf=(...

Regards,
Roman
Comment 8 Roman 2018-01-10 00:23:08 UTC
I meant:
when I called ./configure ${ECONF_SOURCE} from within the ebuild script ...
Comment 9 Roman 2018-01-10 18:27:44 UTC
Created attachment 514158 [details, diff]
fftw-9999.ebuild patch

created with:
diff -Naur /usr/portage/sci-libs/fftw/fftw-9999.ebuild /tmp/fftw-9999.ebuild
Comment 10 Roman 2018-01-10 18:29:57 UTC
With the above patch emerge works now.
Comment 11 Christoph Junghans (RETIRED) gentoo-dev 2018-01-10 20:18:19 UTC
(In reply to Roman from comment #10)
> With the above patch emerge works now.
The patch break multi-precision support, so that won't go in.
Comment 12 Christoph Junghans (RETIRED) gentoo-dev 2018-01-11 06:52:50 UTC
commit 742b311d309929ac2c752a00efa323b231bba650 (HEAD -> master, origin/master, origin/HEAD)
Author: Christoph Junghans <junghans@gentoo.org>
Date:   Wed Jan 10 23:51:00 2018 -0700

    sci-libs/fftw: live ebuild update (bug #643128)

    Package-Manager: Portage-2.3.13, Repoman-2.3.3
Comment 13 David Seifert gentoo-dev 2018-01-11 09:54:27 UTC
(In reply to Christoph Junghans from comment #12)
> commit 742b311d309929ac2c752a00efa323b231bba650 (HEAD -> master,
> origin/master, origin/HEAD)
> Author: Christoph Junghans <junghans@gentoo.org>
> Date:   Wed Jan 10 23:51:00 2018 -0700
> 
>     sci-libs/fftw: live ebuild update (bug #643128)
> 
>     Package-Manager: Portage-2.3.13, Repoman-2.3.3

Christoph, please use GLEP 66 tags in future for referencing bugs.