Subject: [Syfi-dev] SCons based build-system for SyFi

From: "Johannes Ring" <[email-masked]>
Date: Thu, 11 Sep 2008 16:18:26 +0200 (CEST)

Hi,

For some time ago Kent asked me to switch the build-system for SyFi from
autotools to a SCons based build-system (as we did for DOLFIN earlier this
year). Finally, I have something that works for me and that I think is
ready for testing by others.

To make the transition easier for me, I took the freedom to restructure
the folders and moving things around a bit. If you don't like it, feel
free to do it your way or tell me and I will try to make some changes.

If you would like to test, here is what you got to do:

1. Clone syfi-scons from the repository located at
http://www.fenics.org/hg/dev/syfi-scons. This will create a new folder
syfi-scons. Create an environment variable SYFIUPDATES that points to this
folder.

2. Clone a fresh copy of the SyFi hg repository and move into the newly
created folder. Copy the $SYFIUPDATES/syfi_reorganizer.sh script into this
folder and execute it.

3. Run 'scons' to compile and 'scons install prefix=<some_prefix>' to
install (you will need the latest simula-scons in PYTHONPATH).

Here is an example that works for me:

cd /tmp
mkdir src
cd src
hg clone http://www.fenics.org/hg/dev/syfi-scons
export SYFIUPDATES=`pwd`/syfi-scons
svn co https://svn.simula.no:40081/int/sc/simula-scons/simula_scons
export PYTHONPATH=`pwd`:$PYTHONPATH
hg clone http://www.fenics.org/hg/syfi
cd syfi
cp $SYFIUPDATES/syfi_reorganizer.sh .
./syfi_reorganizer.sh
scons
scons install prefix=`pwd`/local
scons enableTests=1
scons enableDocs=1

Note: I take no responsibility for any loss of data, so please back up
your data before running the syfi_reorganizer.sh script.

Any comments or suggestions are welcome.

Johannes

---

From: [email-masked]
Date: Thu, 11 Sep 2008 20:01:39 +0200 (CEST)

> Any comments or suggestions are welcome.

Great work! It seems to work but I have not looked closely yet.

Questions:
Does scons generate a 'file' from a 'file.in' ?

Where did syfi.conf go ? I don't see anyting about this
in the syfi_reorganizer.sh script (what other things are happening).

Will simula_scons then be place under scons as in dolfin ? I assume
simula_scons is pretty stable since that can be done.

Kent

---

From: [email-masked]
Date: Thu, 11 Sep 2008 20:21:10 +0200 (CEST)

> Any comments or suggestions are welcome.

We don't need mpi.

Kent

---

From: "Johannes Ring" <[email-masked]>
Date: Thu, 11 Sep 2008 21:12:08 +0200 (CEST)

> Does scons generate a 'file' from a 'file.in' ?

Not as far as I know. I have to do it manually (in the top-level
SConstruct file). Not very nice since it is done every time you run scons.

> in the syfi_reorganizer.sh script (what other things are happening).

I think that syfi.conf was generated by the autotools build-system. I will
modify SConstruct such that a similar file is created (as in DOLFIN).

> simula_scons is pretty stable since that can be done.

Yes, we probably have to do that since simula-scons isn't available for
download for other than people at Simula at the moment.

Johannes

---

From: "Johannes Ring" <[email-masked]>
Date: Thu, 11 Sep 2008 21:12:47 +0200 (CEST)

>> Any comments or suggestions are welcome.

Okay, I'll remove the option.

Johannes

---

From: "Johannes Ring" <[email-masked]>
Date: Thu, 11 Sep 2008 22:04:29 +0200 (CEST)

> modify SConstruct such that a similar file is created (as in DOLFIN).

Done.

> download for other than people at Simula at the moment.

Done.

Johannes

> Johannes
>
> _______________________________________________
> SyFi-dev mailing list
> [email-masked]
> http://fenics.org/mailman/listinfo/syfi-dev
>