[axel-devel] RFC: Directory Layout
Philipp Hagemeister
phihag at phihag.de
Sun Oct 19 21:18:34 UTC 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Currently, axel's directory layout is pretty simple:
. - Source files, text interface, compiled files, axel binary,
documentation, internationalization, compiled i18n files, configure,
Makefile
gui - GUI
Although this is simple, the Makefile that determines what should be
generated/deleted is pretty complicated. It's easy to miss something.
Furthermore, the addition of unit tests requires more magic to determine
what belongs to CLI and what belongs to the core. Additionally, this
intermingling of interface and core has already caused problems; just
take a look at the 300+ lines main method in text.c.
Therefore, I propose the following directory layout:
. configure, Makefile, axelrc.example, axel.spec
cfg/ - Configuration files generated by configure. This folder is
deleted by distclean.
cli/ - The text interface (text.c)
doc/ - Documentation
gui/ - The graphical user interface
i18n/ - Internationalization (only those files under version control)
out/ - Output directory for everything generated by make and deleted by
make clean.
axel - The final binary
bin/ - .o files
cli/ - .o file of the CLI
i18n/ - .mo files
test/ - .o files of the test, executable test-axel
axel-${VERSION}.tar{,.bz2,.gz} - Distribution files
src/ - The main source (.c and .h)
test/ - The test source files
What do you think of this layout? Comments? Improvements? Ideas?
Philipp Hagemeister
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
iEYEAREKAAYFAkj7pCgACgkQ9eq1gvr7CFyayACfYHYr5nUaYWX+46ekQuSKufJv
hRwAn1IYMJk9yiHBVDoOydQvC2IJoZ8u
=989T
-----END PGP SIGNATURE-----
More information about the axel-devel
mailing list