|
Boost : |
From: Joel Young (jdy_at_[hidden])
Date: 2001-02-27 15:52:39
Hi Dan,
I finally took a look at your spec file. I have made extensive patches.
Here are some issues addressed:
1. use standard macros %{name} not %{Name} %{version} not %{Version}
%{post} not %{Post} etc.
2. use the macro version of ALL commands. some systems especially non
linux ones have many versions of these commands with different
command line arguments,e.g., %{__find} not find
3. all spec files need changelogs IMNSHO
4. the temp directory for rpm builds should be %{_tmppath} not /tmp or
/var/tmp or /whatever
5. use %{_includedir},%{_libdir}, etc for path names. don't hardcode
paths.
6. pass CXX=%{__CC} into makefiles since you do not know which compiler is
default. Let the rpm macro file specify. Makefiles need to accept
this standard overide.
7. On the description, consider line wrapping some of the entries. (I
didn't patch this)
8. Using g++ to link shared libraries with 2.95.2 only seems to work if
you have a shared libstdc++ installed. Since g++ linkage is so
broken now, why bother with shared libraries? That way built boost
apps will still work across versions.
9. in the patches in the rpm, don't assume linux ness, protect the
linux specific changes with ifdefs...
There are a few non-rpm gotchas... random_device has an #ifdef linux
check that is either too big or too small in scope. None of the code in
it looks linux specific. (this probably isn't your problem). I have
patched that as well. I am still trying to get stuff to build clean
on Solaris with GCC 2.95.2 in the RPM. When I do, I'll send the
patch(es).
--------
From: Dan Nuffer <dnuffer_at_[hidden]>
Date: Mon, 26 Feb 2001 09:07:06 -0700
To: boost_at_[hidden]
Subj: Re: [boost] New file uploaded to boost
boost_at_[hidden] wrote:
>
> Hello,
>
> This email message is a notification to let you know that
> a file has been uploaded to the Files area of the boost
> group.
>
> File : /boost-1.20.2-8.src.rpm
> Uploaded by : dnuffer_at_[hidden]
> Description : Source RPM of boost 1.20.2
>
Hi,
I finally figured out why the regex++ shared library was crashing when
throwing an exception. Somehow the shared library wasn't getting
created correctly by using ld to link it. When using ld with c++ code,
some additional libraries need to be specified on the command line. The
easy fix is to simply call g++ to link the files. g++ then calls ld
with the appropriate commands.
So in this version of the RPM, I now use g++ to create the shared
library, and the regression test program runs flawlessly.
--Dan Nuffer
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk