[LLVMdev] dist-check implemented
Reid Spencer
reid at x10sys.com
Tue Oct 26 00:23:45 PDT 2004
My final foray into the makefiles for a while has been completed. The
dist-check target is the golden nugget I was hoping to get out of automake.
But, now LLVM Makefiles have it too.
dist-check does the following:
* builds everything with "check" to ensure the source of the distribution is
sane, essentially "make check".
* builds the distribution tar balls with "make dist"
* unpacks a distribution tar ball to a new directory
* builds the unpacked source with "make check", ensuring that the distribution
tarball is likewise sane
* runs "make install", "make uninstall", and "make dist" on the code built from
the unpacked source. This ensures utility of the distribution (install) as
well as providing closure (the distribution can create a distribution of
itself)
If all that succeeds, you'll see:
===== /proj/work/llvm/build2/LLVM-1.4.tar.gz Ready For Distribution =====
A few things to note:
* "make dist-check" can only be run from the BUILD_OBJ_ROOT directory. If you
try it somewhere else, you'll be politely told you're off your rocker
* "make dist-check" can only be run when BUILD_OBJ_DIR != BUILD_SRC_DIR. If you
try it somewhere else, your hard disk will be reformatted (kidding!)
* don't run "make dist-check" for a BUILD_SRC_DIR that has anything other than
"sample" and "Stacker" in the projects directory. The details for
distributing LLVM Projects haven't been completed yet.
* if you really want to burn CPU cycles and give your disk subsystem a workout,
"make dist-check" is just the ticket.
So, when it comes time to release LLVM 1.4 at least the process of ensuring a
quality release will be automated. It takes about 20 minutes to run
"make -j 3 dist-check" on my 2.3 GHz Dual Xeon machine. Your mileage may vary.
Enjoy,
Reid
More information about the llvm-dev
mailing list