[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNU Crypto] Proposal for a small build-system change
From: |
Morgon Kanter |
Subject: |
[GNU Crypto] Proposal for a small build-system change |
Date: |
Sun, 15 Jun 2003 19:02:36 -0400 |
I've noticed that there is a lot of needless copying being done when
one of the init.sh scripts is run for which build you wish to do. Not
only is this needless, if you run one of these in the top-level source
directory, it is impossible to reverse without untarring the sources
again. It is very difficult to build a debian package in a directory
other than the top-level source directory, so here is what I propose.
I think this makes the entire thing a lot cleaner anyway.
We currently have the "default" build files in the top-level source
directory, and when that init.sh is run, they are copied to your
current location. I think that instead we should create a new
subdirectory, called "default", "builddefault", or "buildinit", or
something that makes sense, and move all of these files that the
default build uses and other builds overwrite there.
Then, create symlinks to the top-level source directory from these
files back to the same filenames. That way, it is still the "default"
build. Now, when we run an init.sh, it will first remove these symlinks,
and then create new ones from the respective build files. For example:
1. First, we have the default build files already, symlinks to
initbuild/filenames.
2. We want the GCJ build files. We run gcj/init.sh
3. gcj/init.sh removes all these symlinks from the current directory
4. gcj/init.sh creates new symlinks in the current directory to the
files in the gcj/ subdirectory.
This gives us the advantage that we can reversably call any init.sh
from the top-level source directory and it is easily reversable and
cleanable. No files will be overwritten as they would be if cp -f
was used. This doesn't require a big change to the init.sh scripts -
just replace cp -f with ln -s
This is my proposal. It will make creating the debian package for
gnu-crypto a -LOT- easier, as well as make the whole build system
cleaner.
Morgon
--
"Man is the only creature capable of hating itself" -- Governor of Japan
in The End of Evangelion
- [GNU Crypto] Proposal for a small build-system change,
Morgon Kanter <=