Dear all

I have some simple (and non-urgent) questions on the use of toplevel make. 
Thanks in advance for your time and sorry if the questions may look trivial to 
you.


In the following I fix:

InstallDir=/path/to/install_dir
BuildDir=/path/to/build_dir
SysOptions= a bash array containing configure options NOT including --prefix 
and other options setting the target paths/files.


0)
Is there a toplevel ``make help`` that explains its options and their semantics?


1) Does ``make`` implies ``make check``?


2) Questions on safe cleaning before a rebuild.

Suppose that at time t0 I execute:

cd $BuildDir && configure --prefix=$INSTALL "${SysOptions[@]}" && make && sudo 
make install.

Then at time t1 > t0 I want to rebuild (maybe the sources changed, maybe not) 
and I execute

cd $BuildDir && configure --prefix=$INSTALL "${SysOptions[@]}" && make && sudo 
make install

1.1 Will the second ``make`` properly delete all the previous fricas-related 
contents in $InstallDIr or shall I manually delete them  before?

1.2 Will the second ``make install`` properly delete all the previous 
fricas-related contents in $BuildDir or shall I manually delete them  before?

1.3 May I omit ``configure --prefix=$INSTALL "${SysOptions[@]}`` (same 
parameters!) in the second build?



3) From https://github.com/fricas/fricas/blob/master/Makenotes.tex#L59

``The build system is set up  so that if [[make all]] just completed
then [[make install]] will not modify any file in the build directory,``

is this still correct?


4)
Does ``make`` implies ``make all``?


5) From https://github.com/fricas/fricas/blob/master/Makenotes.tex#L821

``
[[mostlyclean]] acts almost like [[clean]] except that it does not
delete some files that are time-consuming to make (if remaking is
not needed), e.g. [[libspad.a]] or [[lisp]].

[[clean]] deletes any file created by running [[make]].
``

is this still correct?


6) From https://github.com/fricas/fricas/blob/master/Makenotes.tex#L821

``
[[distclean]] cleans up the build directory to the point where it almost
reverts to the state of the build directory before the initial build.

In summary [[clean]] can be interpreted as a prerequisite of [[distclean]],
and [[mostlyclean]] a prerequisite of [[clean]].

``

I'm confused: if clean deletes all files created by make and is a prerequisite 
of distclean, what actually does in addition distclean and what means 
``almost`` in ``almost reverts to the state of the build directory before the 
initial build.''?


7)
Does ``make`` implies ``make clean`` or maybe ``make distclean``?
Does ``make`` implies ``make distclean``?


8) Are there any other important ``make`` targets that could be useful to a 
user / low profile developer workflow?

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/db01e9b3-38ae-76ed-08c8-ba5cb3b28ffa%40gmail.com.

Reply via email to