what does fpc make target sourceinstall do?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

what does fpc make target sourceinstall do?

Bo Berglund
I have looked at a cook-book description on how to build fpc from
sources on RaspBian Linux and there I found these steps (I have left
out some other steps non-related to my question):

svn co http://svn.freepascal.org/svn/fpc/tags/release_3_0_0 3.0.0
cd 3.0.0
make clean
make all OPT=-dFPC_ARMHF
sudo make install OPT=-dFPC_ARMHF PREFIX=/usr
sudo make install sourceinstall OPT=-dFPC_ARMHF PREFIX=/usr

If I run these commands except the last everything seems to work fine
including building lazarus and starting it.

So my question is really if the last line above is superfluous and
otherwise what it really does?

Does it invoke the building of fpc twice or is "install sourceinstall"
a separate command?

I tried "make help" to see the available targets but it returned:

Targets
all Alias for build
build Build a new compiler and all packages
install Install newly build files
zipinstall Create zip/tar of installed files
singlezipinstall Alias for zipinstall

So it seems like sourceinstall is not even a valid target....

Note:
I have next to no knowledge of make, the only time ever I use make is
when dealing with open source software like fpc and then only with
direction from some instructions (files or webpages).


--
Bo Berglund
Developer in Sweden

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: what does fpc make target sourceinstall do?

Bo Berglund
On Sun, 20 Dec 2015 09:14:40 +0100, Bo Berglund
<[hidden email]> wrote:

>I have looked at a cook-book description on how to build fpc from
>sources on RaspBian Linux and there I found these steps (I have left
>out some other steps non-related to my question):
>
>svn co http://svn.freepascal.org/svn/fpc/tags/release_3_0_0 3.0.0
>cd 3.0.0
>make clean
>make all OPT=-dFPC_ARMHF
>sudo make install OPT=-dFPC_ARMHF PREFIX=/usr
>sudo make install sourceinstall OPT=-dFPC_ARMHF PREFIX=/usr
>
>If I run these commands except the last everything seems to work fine
>including building lazarus and starting it.
>
>So my question is really if the last line above is superfluous and
>otherwise what it really does?
>

Anyone with any info to share on this?
Will
make install
be superfluous if it is followed by:
make install sourceinstall

I.e. if two arguments are given will both be processed in sequence?

And what does sourceinstall really do?


--
Bo Berglund
Developer in Sweden

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: what does fpc make target sourceinstall do?

Anthony Walter-3
The compiler has a few parts. 

The bin folder which is created during "make install". Cross compilers can also be placed there after "make crossinstall"
The lib folder which  is created during "make install". It contains the rtl, fcl, and other units per architecture (from "make crossinstall") for the packages folder.

Now I am going to go out on a limb and guess that "make sourceinstall" copies the fpc source code, located under the compiler folder, to the $INSTALL_PREFIX/compiler folder.

Personally, I always install somewhere under $HOME (e.g. INSTALL_PREFIX=$HOME/Development/FreePascal) such that sudo is not needed. In that case it would be relatively easy to determine which files/folders "make sourceinstall" is manipulating. NExt time I build the compiler I'll try out "make sourceinstall" and see what happens.

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal