[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-hackers] Alternative egg installation directories
From: |
Mario Domenech Goulart |
Subject: |
[Chicken-hackers] Alternative egg installation directories |
Date: |
Sun, 28 May 2017 18:19:53 +0200 |
Hi,
While porting salmonella to C5, I noticed that we don't have a way to
install executables into an alternative "bin" directory.
If we have an egg that installs a library and an executable, and if we
set CHICKEN_INSTALL_REPOSITORY, the library will go to the directory
pointed by CHICKEN_INSTALL_REPOSITORY, but the executable will go to the
canonical "bin" directory (C_TARGET_BIN_HOME, derived from
"$(TARGET_PREFIX)/bin" by default).
I think it is not ideal because:
1. we will have an executable in the canonical "bin" directory that will
not properly function unless we set CHICKEN_REPOSITORY_PATH to the
directory that contains the loadable libraries that it needs.
2. there won't be a way to isolate the canonical installation directory.
The "bin" directory will be contaminated by executables installed by
eggs.
Attached is a patch that adds an extra environment variable
(CHICKEN_INSTALL_BINDIR) to specify an alternative directory for
executables (please don't consider applying -- it only serves to
illustrate the situation). I don't think it is enough, though. Maybe
eggs will want to install documentation or data files, and those should
not go to the canonical installation prefix either. Ideally, I think we
should have variables that mimic BINDIR, VARDIR, LIBDIR, MANDIR etc. for
egg installation too. For convenience, just like for the installation
of CHICKEN itself, we should have a PREFIX for eggs, so that we don't
have to set up all the variables. Then we are back to something similar
to CHICKEN_PREFIX. :-)
Please, let me know your thoughts on this topic.
All the best.
Mario
--
http://parenteses.org/mario
0001-egg-stuff-respect-CHICKEN_INSTALL_BINDIR-when-instal.patch
Description: Text Data
- [Chicken-hackers] Alternative egg installation directories,
Mario Domenech Goulart <=