bugGNU nano - Bugs: bug #50956, AIX 6.1 make: Cannot find a rule...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #50956: AIX 6.1 make: Cannot find a rule to create target update_revision from dependencies.

Submitter:  None
Submitted:  Fri 05 May 2017 03:51:46 PM UTC
   
 
Severity:  3 - Normal Status:  Fixed
Assigned to:  bens Open/Closed:  Closed

Jump to the original submission

Sun 02 Jul 2017 08:15:02 AM UTC, comment #16: 

John, regarding the threads: do you have the same problem as reported in bug #51348?  If yes, then please comment there.

Benno Schulenberg <bens>
Group administrator
Fri 19 May 2017 10:12:25 AM UTC, comment #15: 

Thanks for confirming.

Benno Schulenberg <bens>
Group administrator
Thu 18 May 2017 10:54:03 PM UTC, comment #14: 

2.8.3 works with  ./configure --disable-threads CC=/usr/vacpp/bin/xlC && make

(It still fails with threads, but I'll leave that for another day.)

John Wiersba <jrw>
Wed 10 May 2017 09:29:06 PM UTC, comment #13: 

AIX's native patch fails:

$ /bin/patch -p0 -i makefile-force.patch
Hmm...  Looks like a unified context diff to me...
The text leading up to this was:
--------------------------
|--- src/Makefile.in.was        2017-05-10 21:00:12.000000000 +0200
|+++ src/Makefile.in    2017-05-10 21:00:33.000000000 +0200
--------------------------
Patching file src/Makefile.in using Plan A...
Malformed patch at line 4:  nano.o: revision.h


However, GNU patch worked:
$ /GNU/dir/patch -p0 -i makefile-force.patch
patching file src/Makefile.in


After that:
$ ./configure --disable-threads CC=/usr/vacpp/bin/xlC
$ /bin/make


That worked and produced a running nano!

John Wiersba <jrw>
Wed 10 May 2017 07:07:14 PM UTC, comment #12: 

A 000* patch is a git patch, so it would need -p1:

    patch  -p1  <0001-build-use-*.patch

However, it is a patch against Makefile.am, so you would need all the autoconf stuff installed in order to be able to see the effect.  Let me instead make a patch for Makefile.in of 2.8.2...  See attached.

You apply this normal patch with:

    patch  -p0  <makefile-force.patch

Patch against a clean 2.8.2 source tree.  Then run ./configure and your native make.

(file #40657)

Benno Schulenberg <bens>
Group administrator
Wed 10 May 2017 03:38:24 PM UTC, comment #11: 

Benno, can you give me the exact patch command to use to install the patch?  I've already unpacked nano-2.8.2 and run ./configure with the appropriate options (for my installation).  I've installed GNU patch, cd'ed to nano-2.8.2, and I am running /gnu/dir/patch -i YOUR_PATCH_FILE, but I keep getting errors (can't find the file to patch or hunk failed depending on my specifying -p0 or not).

John Wiersba <jrw>
Tue 09 May 2017 03:49:17 PM UTC, comment #10: 

Hm!  It results that the .PHONY thing was needed to get src/revision.h updated whenever git's revision changed.

I've pushed the attached patch.  Can you verify whether this works with your native make?

(file #40632)

Benno Schulenberg <bens>
Group administrator
Mon 08 May 2017 08:19:42 PM UTC, comment #9: 

Haha!  Don't worry -- that's my throwaway directory for all temporary work (my shortcuts: j: make and enter new junk directory, jjj: throw away junk directory).

Thanks for fixing it!  (And thanks for nano:  I use it as an accessible alternative to vi(!) for beginning linux/unix users).

John Wiersba <jrw>
Mon 08 May 2017 07:31:15 PM UTC, comment #8: 


> /home/jrw32982/junk/nano-2.8.2


Hey -- that's not flattering.  :)

> Patching file src/Makefile using Plan A...
> Malformed patch at line 4: nano.o: revision.h


That line seems to have a trailing space that isn't in the patch that I uploaded.  (Or maybe patch just adds it in its message?)

Anyway, fixed in git, a33a4f00.  Thanks for reporting.

Benno Schulenberg <bens>
Group administrator
Mon 08 May 2017 06:47:30 PM UTC, comment #7: 

Naw, I think this is just the normal AIX weirdness, this time with the patch command:

$ pwd
/home/jrw32982/junk/nano-2.8.2

$ patch -i ../strip-the-dummy.patch -p0
Hmm...  Looks like a unified context diff to me...
The text leading up to this was:
--------------------------
|--- src/Makefile.was   2017-05-08 10:54:31.000000000 +0200
|+++ src/Makefile       2017-05-08 10:54:12.000000000 +0200
--------------------------
Patching file src/Makefile using Plan A...
Malformed patch at line 4:  nano.o: revision.h

John Wiersba <jrw>
Mon 08 May 2017 06:17:59 PM UTC, comment #6: 


> Hmm... Looks like a unified context diff to me...
> The text leading up to this was:
> --------------------------
> |--- src/Makefile.was 2017-05-08 10:54:31.000000000 +0200
> |+++ src/Makefile 2017-05-08 10:54:12.000000000 +0200
> --------------------------
> Patching file Makefile using Plan A...
> Malformed patch at line 4: nano.o: revision.h


Most likely you need to supply the option -p0, because it shouldn't try to patch the top Makefile but src/Makefile.

Benno Schulenberg <bens>
Group administrator
Mon 08 May 2017 03:58:11 PM UTC, comment #5: 

The AIX patch command didn't understand your patch :-(

  $ patch -i strip-the-dummy.patch
  Hmm...  Looks like a unified context diff to me...
  The text leading up to this was:
  --------------------------
  |--- src/Makefile.was   2017-05-08 10:54:31.000000000 +0200
  |+++ src/Makefile       2017-05-08 10:54:12.000000000 +0200
  --------------------------
  Patching file Makefile using Plan A...
  Malformed patch at line 4:  nano.o: revision.h

However, I applied the patch contents by hand and was able to run the native make command successfully. :-)

Next up:  a bug trying to build on Solaris!  Thanks for your help, Benno!

John Wiersba <jrw>
Mon 08 May 2017 09:24:07 AM UTC, comment #4: 

Please try the attached patch (a temporary, direct fix against src/Makefile).  With it applied, you should be able to build with your native make.

(I don't understand this Makefile stuff: I just tried things until it did what I wanted.  But now I see that this update_revision thing is entirely useless, it is a dummy that just causes trouble.)

(file #40613)

Benno Schulenberg <bens>
Group administrator
Fri 05 May 2017 10:10:27 PM UTC, comment #3: 

Downloading/building latest GNU make + disabling pthreads allowed me to successfully build the source with my installation of AIX's xlC compiler.  Not sure what's up with pthreads (maybe my installation is screwed up?)

John Wiersba <jrw>
Fri 05 May 2017 08:22:53 PM UTC, comment #2: 

Thanks for reporting.  I remember having had a similar report before -- it took a while to find it again:

https://lists.gnu.org/archive/html/nano-devel/2017-01/msg00024.html

It shows the same problem: "Don't know how to make target `update_revision'".  The reason seems to be that your make (or makes) don't understand the .PHONY target.  Apparently we use something that only a new enough GNU make has (new enough = from the last ten years or so).

Don't have any time now; will look at this next week.

Benno Schulenberg <bens>
Group administrator
Fri 05 May 2017 03:57:58 PM UTC, comment #1: 

Sorry, I was the user who submitted this bug, but it didn't force me to login before I submitted it.  I'm adding this comment so you can contact me if you need to.

John Wiersba <jrw>
Fri 05 May 2017 03:51:46 PM UTC, original submission:  

Trying to build Nano2.8.2 on AIX6.1

./configure CC=/usr/vac/bin/cc
/bin/make
...
make: Cannot find a rule to create target update_revision from dependencies.
Stop.
make: The error code from the last command is 1.
Stop.
make: The error code from the last command is 2.
Stop.

I've attached the configure files and the output of make.
I've tried different versions of nano with different compilers and also a very old version of GNU make, each time getting different errors. 

This run that I'm submitting seems to be the most likely to be standard, so I'd like to attack that.  It seems that the issue is something to do with the AIX make command.

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #40657:  makefile-force.patch added by bens (460B - text/x-diff)
file #40613:  strip-the-dummy.patch added by bens (457B - text/x-diff)
file #40597:  config.h added by None (74KiB - application/octet-stream)
file #40598:  make.log added by None (64KiB - application/octet-stream)
file #40599:  config.log added by None (2MiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by bens (Posted a comment)
  • -email is unavailable- added by jrw (Posted a comment)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 10 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-05-19 bens Open/ClosedOpen Closed
    2017-05-10 bens Attached File- Added makefile-force.patch, #40657
    2017-05-09 bens Attached File- Added 0001-build-use-the-force-mechanism-to-always-run-the-revi.patch, #40632
    2017-05-08 bens StatusIn Progress Fixed
    2017-05-08 bens StatusNone In Progress
    2017-05-08 bens Attached File- Added strip-the-dummy.patch, #40613
        Assigned toNone bens
    2017-05-05 None Attached File- Added config.h, #40597
        Attached File- Added make.log, #40598
        Attached File- Added config.log, #40599

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code