I have now improved build system in git repo.  It now
supports packages and more flexible configuration.  To
test build with packages do:

0. Go to directory where you will build poplog

1. Fetch core sources:

  git clone --depth=1 https://github.com/hebisch/poplog .

2. Fetch packages:

  cd pop
  git clone --depth=1 https://github.com/hebisch/poplog_packages packages
  cd ..

3. Make directory for corepop:

  mkdir -p target/pop

4. Fetch corepop:

  wget https://www.math.uni.wroc.pl/~hebisch/poplog/corepop.amd64

5. Turn on executable bits on fetched corepop:

  chmod 755 corepop.amd64

6. Move corepop to proper place:

  mv corepop.amd64 target/pop/corepop

7. Run configure:

  ./configure

8. Make new corepop:

  make stamp_new_corepop

9. Replace old corepop by new:

  mv target/pop/new_corepop target/pop/corepop

10. Build:

  make

11. Clean up files not needed for normal use:

  make buildclean

Above I assumed build on 64-bit PC.  If you have PC
with 32-bit OS replace corepop.amd64 above by
corepop.i386

configure detects capabilities of build machine and
by default disables unsupported features: if you have
no support for X developement, then X support will be
disabled, if you have Xt, but no Motif, then Poplog
will use Xt.  If you have Motif, then Poplog will
be linked with Motif.  If this choice is not
satisfactory, configure supports options:
--with_no_x will disable X support even if machine
has X libraries.  --with_xt will insist on Xt, that
is ignore Motif and fail if there are no machine
does not suppot Xt.  --with_motif will insist on
Motif, if there are no Motif it will fail.

As I wrote earlier, by defult binaries are created
in subdirectory 'target'.  But this is configurable
now.  To get directory layout similar to traditional
Poplog distribution in instructions above
replace 'target' by 'pop' (that is put fetched
corepop in 'pop/pop') and use --target_subdir=pop
option to configure.

Even with --target_subdir=pop there will be some
difference in layout: binary external libraries
will go to 'pop/exlibs' and saved images will
go to 'pop/psv'.  Also, I modified ppovision
so that libraries needed by popvision are in
target/packages/popviosion/bin subdirectory
(or pop/packages/popviosion/bin if you use
-target_subdir=pop).  Note also that neural
and popvision in git package repo are modifed
so that normally libraries are taken relative
to 'popsys'.

I intend to provide a tarball with core parts,
packages and corepop so that most steps above
will be replaced by fetching and unpacking the
tarball.

-- 
                              Waldek Hebisch

Reply via email to