On 01/09/2013 03:10 AM, Vincent Danjean wrote:
> I'm really interrested to know if this last patch works anywhere or not.
This doesn't apply cleanly anymore to the 0.7 branch (and the latest rc)
as most of it is applied already (all except for the llvm-config call
removal).
> Here is a patch that try to solve this. It also move internal scripts
> and tools out of bindir (scripts are moved to pkgdatadir and
> program to pkglibexecdir).
It looks a bit too intrusive so I rather not apply it to 0.7 at this
stage of the release. I'll apply it to trunk so it
gets more testing during the 0.8 development cycle. Should be OK
as you seem to have it in the debian package patch list.
> About the search :
> - for scripts, they are updated at install time (to switch from
> build-tree paths to install paths)
> - for binaries, they look if the environment variable POCL_BUILDING
> is defined.
> If yes (and it is defined in tests/atlocal.in for all tests), the
> build-tree path is used.
> If no, the install path is used if the file is here, else the
> plain name is used. In this latter case, the user is responsible
> to correctly configure its PATH but this case should never happens
> on normal use.
OK. The developers can then just define POCL_BUILDING in their
environment for easier testing.
> Then, when digging into source/build system, I see several things
> I want to ask you if this is normal or not.
>
> 1) poclu is installed into /usr/include *and* /usr/include/pocl
> => in the file include/Makefile.am, poclu.h is included both
> in pkginclude_HEADERS and include_HEADERS. Is it what you want?
No. Should be fixed.
> 2) some installed headers are required for running OpenCL programs
> while some others are provided to write new devices, ...
> In my packaging, I put the first ones with the library itself
> and the second ones into a separate devel package.
> Can you check that my split is correct?
> I put with the library pocl/_kernel.h and pocl/*/types.h
> I put in the devel package poclu.h, pocl/pocl_device.h,
> pocl/utlist.h, pocl/poclu.h and pocl/pocl.h
I'm not sure are any of these headers are required to be installed
or included in the packages as everything (including the device drivers)
is built in libpocl and it's not supposed to be possible (yet!) to develop
device drivers outside the pocl tree and add them as plugins or similar.
I.e. the cl.h etc. should be enough.
poclu, on the other hand, is a utility library meant to be generic
across all OpenCL implementations. Currently it contains only
endianness swapping functions but might be extended later on.
For that poclu.h should be installed (thus in include_HEADERS).
I'll try to clean these up (define what is really needed to
be installed more strictly) in the devel branch.
> 3) in lib/CL/devices/tce/tce_common.cc, there is a reference to
> SRCDIR. Will this still work if sources are removed after installation?
> std::string("tcecc --vector-backend -llwpr -I ") + SRCDIR +
> "/include " + deviceMainSrc + " " +
> Note that I do not use tce, so I cannot check.
It should work, it's just an additional (possibly useless) include
search path. I'll check.
> 4) debian llvm-3.2 package seems to be built with -fno-rtti.
> If this is really a problem for pocl (the basic testsuite pass, is it
> really required?) then I will need to ask llvm maintainers to change
> this (and hope they accept)
I once asked them to enable it and they did but I think it was for the
Ubuntu package (IIRC Debian didn't include the LLVM package at that
point).
I do not know why it works without RTTI for some and doesn't. Anyways,
it should be more (library) user friendly to package LLVM with the RTTI as
leaving it out causes more problems than brings benefits.
The default of no-rtti was discussed to the length in the LLVMdev mailing list
and it led to the creation of a packaging guidelines document where RTTI is
advised to be turned on by default in the packages to reduce problems with
library clients which require RTTI:
http://llvm.1065342.n5.nabble.com/Disabling-rtti-on-default-build-could-it-be-reverted-re-enabled-td42428.html
http://llvm.org/docs/Packaging.html
https://bugs.launchpad.net/ubuntu/+source/llvm/+bug/526072
> PS: due to my work schedule, it will be very difficult for me to
> continue to work on pocl during the next 2 weeks. If some of you
> want to test
... ? This sentence was not finished.
OK, we'll release 0.7 to get it done with and continue adding packaging
fixes in the 0.8 cycle.
--
--Pekka
------------------------------------------------------------------------------
Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery
and much more. Keep your Java skills current with LearnJavaNow -
200+ hours of step-by-step video tutorials by Java experts.
SALE $49.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122612
_______________________________________________
pocl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pocl-devel