Pierre Labastie wrote:
On 25/05/2016 20:25, Bruce Dubbs wrote:
Pierre Labastie wrote:
On 25/05/2016 06:03, Bruce Dubbs wrote:
How doese jhalfs work with this version?
It doesn't yet. This is a work in progress.
-- Bruce
I'll have a look at that. But I need to decide how to enter the choice
between systemd and sysvinit. Note that you do not need to know the
internals of jhalfs to read the following, but of course, you should be a
user:
It cannot be in the Makefile, because jhalfs is supposed to work with
reasonably old versions (I mean at least in the 7.x series), which
obviously do not have merged books, so "make systemd" would be nonsense
for those.
So it has to be in the menu, but then, jhalfs needs to be able to
determine whether it will be building a merged book or not. Since the book
would be downloaded after exiting the menu, that's not so easy... Of
course, we could have a question like: "just in case, do you want systemd
or sysvinit?", but there is some kind of chicken and egg problem here.
I'll think a little more about this, but I'd be happy to get some input.
I've been thinking about jhalfs too. I'd say that when we select 'Use Book',
then we should change the option 'Linux From Scratch' to two options:
Linux From Scratch - SystemV
Linux From Scratch - Systemd
There might be a third option:
Linux From Scratch - 7.9 or earlier. That would be essentially the same
internally as the SystemV target.
Also, I've been looking at the Makefile and want to try to optimize it a bit.
There are several places where the same processing takes place that should be
combined.
Right now these are the targets I've implemented:
sysv (default)
systemd
pdf
pdfd
nochunks
nochunksd
tmpdir
validate
validated
profile-html
wget-list
wget-listd
md5sums
md5sumsd
dump-commands
dump-commandsd
The targets that end with a 'd' are systemd specific. I'm thinking about
trying to combine those and selecting with a variable. That is something like
'make REV=systemd' or 'make REV=sysv' with sysv as the default.
What I want to implement is what users will find most convenient. What I've
got now is ok for the simple process of 'make' for sysv and 'make systemd' for
that book, but I'm not sure about the other targets, some owich are used
internally. I don't know who would really use the pdf or nochunks targets
other than out daily build scripts and AFAIK jhalfs is the only user for
dump-commands.
I think jhalfs does not use the Makefile from the lfsbook at all.
Really? I didn't check jhalfs but running 'make dump-commands' produces
the same files that are in /mnt/lfs/jhalfs/lfs-commands/. I haven't
checked for an exact match though.
Checking jhalfs, I do see several xsltproc commands but no make commands.
I suspect the entries are similar to the Makefile though.
As a developer I do use validate, md5sums, and wget-list directly at times.
I use the last two too.
So, do I leave the targets as they are now or is there a better set?
I'd say a variable is better than a target (and would decrease the number of
targets by a factor of two). If somebody insists, we can always make a target
from a variable:
----
systemd:
$(MAKE) REV=systemd
----
The converse is less easy.
That still leaves md5sumsd and wget-listd. Hmm. I suppose we can do
make REV=systemd md5sums
If a developer wants to create alternatives, it could always be done in an
alias:
alias md5sumsd="cd $BOOK;make REV=systemd md5sums"
or something like that.
-- Bruce
--
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page