Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gnumake: disable subsecond mtime on darwin #51408

Merged
merged 1 commit into from Dec 3, 2018

Conversation

matthewbauer
Copy link
Member

@matthewbauer matthewbauer commented Dec 2, 2018

gnumake can support subsecond mtimes if it is available. But Darwin
doesn’t support setting subsecond mtimes until 10.13! So we can just
disable this check to avoid the issue where most of our built tools
use seconds but make uses nanoseconds. Might fix some parallel issues
along the way.

Fixes #51221

/cc @endgame @delroth @thoughtpolice

@endgame
Copy link
Contributor

endgame commented Dec 2, 2018

Can you add a comment in the code? I can imagine someone discovering files not being rebuilt in one of their builds (the dual of our issue with ranlib), finding the ac_cv_... setting in the .nix file and being extremely confused.

@@ -27,7 +27,8 @@ stdenv.mkDerivation {
nativeBuildInputs = stdenv.lib.optionals guileSupport [ pkgconfig ];
buildInputs = stdenv.lib.optionals guileSupport [ guile ];

configureFlags = stdenv.lib.optional guileSupport "--with-guile";
configureFlags = stdenv.lib.optional guileSupport "--with-guile"
++ stdenv.lib.optional stdenv.isDarwin "ac_cv_struct_st_mtim_nsec=no";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this maybe carry a comment, when it should safe to re-enable this feature again?
i.e. a while after 10.13?

Copy link
Contributor

@endgame endgame left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your comment is pretty clear. I'll approve now but can you please add a link to a GH issue so someone can retrace steps if necessary?

gnumake can support subsecond mtimes if it is available. But Darwin
doesn’t support setting subsecond mtimes until 10.13! So we can just
disable this check to avoid the issue where most of our built tools
use seconds but make uses nanoseconds. Might fix some parallel issues
along the way.

Fixes NixOS#51221
@matthewbauer matthewbauer merged commit f1a111b into NixOS:staging Dec 3, 2018
@matthewbauer matthewbauer deleted the disable-subsecond-gnumake branch February 22, 2019 04:15
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 7, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 7, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 8, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 9, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 16, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 17, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Mar 17, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Apr 3, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
wolfgangwalther added a commit to wolfgangwalther/nixpkgs that referenced this pull request Apr 4, 2024
This was disabled to fix NixOS#51093. The related discussion upstream revealed that this
has been fixed in [1] for v12+. Since v12 is our oldest supported version right now,
we should be able to safely enable parallel building on darwin again.

Furthermore, it seems that this kind of issue was also fixed in NixOS#51221 and NixOS#51408
for the general case.

[1]: postgres/postgres@826eff5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants