
"David Abrahams" <dave@boost-consulting.com> wrote in message news:ufywjju4b.fsf@boost-> > I've looked at the build system (i.e, Jam files) and noticed that most of
time, the directories (include directories, link directories) are specified in absolute format - $(BOOST_ROOT)/whatever. However, not all of them are absolute. Some are relative - ../../../whatever. Other parts of the Boost tree, such as the html files, contain relative paths.
Actually all the paths are relative. $(BOOST_ROOT) expands to a relative path like ../../.. that is adjusted to a new appropriate value in each Jamfile.
I'd like to ask one more question, if possible. How does it know how to expand $(BOOST_ROOT)? If I'm standing in C:\libraries\boost_1_32_0\libs\python\test, for example, how can it possibly know that "$(BOOST_ROOT)" is "../../.."? I can't think of any algorithm that can reliably determine this. What am I missing?