Boost logo

Boost-Build :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2003-11-30 01:48:07


Victor A. Wagner, Jr. wrote:

>>It is useful, it's just not as versatile as you (and me) would want it to be.
>
> There are a lot of newbies that I talk to daily on IRC. Many of them I
> direct to www.boost.org for solutions that already exist. Since I do not
> control _when_ boost choosed to release, nor, certainly do the newbies, I
> think asking all the windows people to do manual work to do non-trivial
> fixup work so what they used to have still works when all they really want
> the newest widgit.lib for their new project.

Newbies are an audience we haven't really addressed in the past. But bear with
us, we are trying.

>>So creating a script that copies the files to the names you prefer would
>>work,
>>for now.

> and then I do another script for the next?

No, just put the version as a single var in the script. Or since you use VC
use VC variables and encode the version directly in the extra libs. You do
know you can use variables just about everywhere in the VC settings?

>Scripting in the windows world
> is somewhat limited

BAT scripts are a bit limited, but can be bent in entertaining ways.. Just
look at what I did with the bjam build.bat. Windows Scripting can do much more.

> so, what's any clues about this LIB command that seems to be on my system?
> C:\Logs\UNDERnet>lib
> Microsoft (R) Library Manager Version 7.10.3077
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> usage: LIB [options] [files]
>
> options:
>
> /DEF[:filename]
> /EXPORT:symbol
> /EXTRACT:membername
> /INCLUDE:symbol
> /LIBPATH:dir
> /LIST[:filename]
> /MACHINE:{AM33|ARM|EBC|IA64|M32R|MIPS|MIPS16|MIPSFPU|MIPSFPU16|MIPSR41XX|
> SH3|SH3DSP|SH4|SH5|THUMB|X86}
> /NAME:filename
> /NODEFAULTLIB[:library]
> /NOLOGO
> /OUT:filename
> /REMOVE:membername
> /SUBSYSTEM:{CONSOLE|EFI_APPLICATION|EFI_BOOT_SERVICE_DRIVER|
> EFI_ROM|EFI_RUNTIME_DRIVER|NATIVE|POSIX|WINDOWS|
> WINDOWSCE}[,#[.##]]
> /VERBOSE
>
> ....there seems to be some limited information in MSDN, I'll be checking it
> out.

It the MS archiver equivalent. But as far as we know it only accepts .obj
files as input.

>>>>>I'm serious folks, I showed a copy of Rene's previous response to a one of
>>>>>the ops on the undernet #C++ channel and he said "They expect me go update
>>>>>all my projects every time they release boost? They have to be f**king
>>>>>kidding."
>>
>>No, I was expecting people to come up with the obvious copy or rename
>>files to
>>your liking solution.
>
> I don't see manually copying / renaming 36 files to be the "obvious"
> solution (tho it's currently the ONLY one)

It's the same solution whether you do it, or the build+install does it ;-)

>>What I don't understand is how you dealt with previous versions of Boost.
>>Perhaps you can explain, with examples, how you use and distribute programs
>>that use Boost over different versions. How do you deal with users having
>>multiple programs that use multiple versions of Boost libraries? How do you
>>install them? How do you upgrade them? -- You can replace program with
>>library
>>above and answer the same questions.

> from looking at my make files, we got the .lib files out of wherever they
> were put by bjam -sTOOLS= ....
> there weren't any versions in the names (though the paths moved a couple
> times).
> Since we statically link everything, it wasn't much of a problem to update,
> we just built everything and shipped it off telling customers to replace
> their old with their new.

Static libs are the easy case, and corner case, in this respect. It will
usually be easier, and less problematic to just compile the sources directly
(which is what I do). Of course it would be a different story if the ABI
wasn't as malleable as it currently is.

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera_at_[hidden] - grafik_at_[hidden] - 102708583_at_icq
 

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk