steelewool/iraf

unix/hlib/libc/libc.h using /iraf/iraf in reference to .h files

Opened this issue · 2 comments

When I first used iraf it would only work if you had an account iraf and put everything in a directory under that called iraf. It looks like that is still being used in some of the files. The fix I made isn't much better and the references should probably be relative to the file, in this case libc.h. Unless Zach has a better solution.

The offending lines and the new lines for this file are:

-#include "/iraf/iraf/unix/bin/f2c.h"
-#include "/iraf/iraf/unix/hlib/libc/vosproto.h"
+
+/*

    • The directory unix/bin does not exist in my directory structure.
    • This was the original lines:
  • #include "/iraf/iraf/unix/bin/f2c.h"
  • #include "/iraf/iraf/unix/hlib/libc/vosproto.h"
  • */

+#include "/home/steele/git/iraf/unix/bin.linux/f2c.h"
+#include "/home/steele/git/iraf/unix/hlib/libc/vosproto.h"

The id of the commit 58a8b65

Changed to a relative path - which seems better but a -I option might be better for the long term.

The makefile needs to run GCC with a parameter sort of like: -I$REPOSITORY/unix
With that in place, these lines could be simplified:

#include "bin.linux/f2c.h"
#include "hlib/libc/vosproto.h"

Two things need to be done here

  1. The ./install script needs to detect/query the repository path
  2. The makefile needs to be modified to reference the corresponding include paths