Russ Cox is sharing code with you

Bitbucket is a code hosting site. Unlimited public and private repositories. Free for small teams.

Don't show this again

rsc / plan9port http://swtch.com/plan9port/

Plan 9 from User Space (aka plan9port) is a port of many Plan 9 programs from their native Plan 9 environment to Unix-like operating systems. See the web site http://swtch.com/plan9port/ for details.

Clone this repository (size: 58.2 MB): HTTPS / SSH
hg clone https://bitbucket.org/rsc/plan9port
hg clone ssh://hg@bitbucket.org/rsc/plan9port

Issues

#92 mk should consider target up-to-date when timestamp is equal

Reported by xiaq

Currently mk would consider the target out of date when the newest prerequisite has the same timestamp with it. The following reproduces this behavior:

$ echo 't: p' > mkfile
$ echo '  touch t' >> mkfile
$ touch t p
$ mk
touch t
$ mk
mk: 't' is up to date

GNU Make and BSD Make both behave correctly. Continuing the following situation:

$ cp mkfile makefile
$ touch t p
$ make # GNU Make
make: `t' is up to date
$ bmake # BSD Make
`t' is up to date

According to mk(1), the target is out of date only when one of the prerequisites is newer than the target. I take "newer" to mean "strictly newer".

I don't know how mk on Plan 9 resolves this, but in Unix this issue is a problem. I heard that older versions of make has the same behavior, but I'm not sure where I heard that.

9port version is 20120106, which I suppose is new enough.

Status: new Responsible: nobody Type: bug Priority: major
Milestone: none Component: none Version: none

Attachments

No attachments added for this issue yet.

Comments and changes

No comments added for this issue yet.

Add comment / attachment

Verification: Please write the text from the image in the box (letters only)

captcha

Is that you, Humanoid? Is this me?