-
Notifications
You must be signed in to change notification settings - Fork 79
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
Honor autoconf --prefix arguments #63
Conversation
Fix typo in check_file_stat
Make nhc debian aware
This look uglier in plaintext, but avoids bogus rendering on GitHub.
Escape bash pipe symbols in markdown table
So first, any particular reason you generate the scripts from the I'm really torn on this one. I've kinda been avoiding doing something like this because I have a bit of a visceral reaction to turning all the base scripts into One alternative possibility might be to transform the installed versions of the scripts rather than the sources, possibly with an |
I was trying to follow the existing pattern of hardcoding the paths in the final installed script. I think using an environmental variable for these would be much cleaner and could easily swap this pull request to that instead. The downside to using environment could cause behavior to be surprising on a default install though but updating documentation should help with that.
I was following the best practice suggestions from autoconf (https://www.gnu.org/software/automake/manual/html_node/Scripts.html#Scripts). I don't actually like this setup either but I assumed you would prefer follow autoconf dev's suggestions.
Sure. AFAIK appending the ".in" serves as a good warning to any future developers that this file will be modified during install process. |
Yes, us to. Just Installed nhc 1.4.2 gives weird error messages until I found PATH in the nhc script. Adding /usr/local/bin to find sinfo and scontrol and I can at least start kicking the tires. |
I created a new branch for applying this PR so that we can play around a little with the particulars of how this is implemented before merging into the main branch. I'm targeting the 1.4.4 release for this since I think it's going to take some trial-and-error to avoid breaking the RPM build (the 1st-class citizen, so to speak) and the GitHub source tree build (what all the kool kids are doing). |
Not all Linux distributions use "/usr/libexec" as it is marked optional by the FHS. This adds checks to the `nhcmain_init_env()` function to make sure that NHC only uses directories that exist. So now `$SYSCONFIGDIR` defaults to "/etc/sysconfig" ("/etc/default" on Debian), but if that directory doesn't exist, NHC will fall back on "/etc/default" if it exists or "/etc/nhc/sysconfig" if not. Similarly, `$LIBEXECDIR` will fall back to "/usr/lib" if "/usr/libexec" is not present. This fixes #75, and it's highly likely to interfere with the ability to merge #63 at a later date.
For our machines, we generally prefer to put compiled applications in /usr/local. This patch follows the suggestions of GNU (https://www.gnu.org/software/autoconf/manual/autoconf-2.63/html_node/Installation-Directory-Variables.html and https://www.gnu.org/software/automake/manual/html_node/Scripts.html#Scripts) to push the configure settings into the nhc scripts. The main nhc scripts had to be converted to input templates per autoconf convention.
This patch fixes issue in #62