On Saturday 17 March 2007 8:31 am, Mark wrote: > > 1) Simple ebuild that just runs the sage build process and > install > > all of the sage stuff out of the way (/opt/sage). The > difficult > > step would be divorcing the build time location from the run > time > > location (b/c portage does a build to a dummy location and > then > > copies it to the live filesystem). > > One option is to just copy the build directory over to the run-time > location at the end of the build, i.e., as make install. This should > work > if you run SAGE once from the target location. Let me know when > you succeed at doing this. It would be a significant step forward > for SAGE. > *************************************************************************** >*******
There's also a "make install" option, after you complete the build. You have to set the environment variable DESTDIR to the target directory, then type "make install". We needed this for the Debian package. > So, I'm not sure how easy this is ... for example, when you build > sage, you set SAGE_ROOT and this is used throughout the build process > and the runtime usage (right? I could well be wrong). This coupling > of the build time and run time environments is my biggest concern. It's not coupled so much. The only coupling is that the file SAGE_ROOT/sage has the location sage is installed in listed near the top. That file then sets the environment variable SAGE_ROOT, which is then used by the rest of SAGE. > Now, in gentoo, the builds are all done in /var/tmp/portage/ > packagename/work. Then, make install is pointed to (with either -- > prefix and/or DESTDIR) /var/tmp/portage/packagename/image. Under > image, there might be image/usr image/share/doc image/include and so > forth. For what I'm talking about using /opt for sage, we'd have > image/opt/sage/<all the sage stuff>. This is done in a "sandbox" that > prevents writing anywhere else in the system. So, any hardcoded paths > will pose a problem (everything has to be relative to --prefix and/or > DESTDIR). Finally, this gets copied into the live filesystem: for > us, this would be into /opt/sage/. And this point, we have to make > sure all the references in sage are relative to /opt/sage ... NOT to / > var/tmp/portage/sage/image/opt/sage. One can build SAGE anywhere, move it anywhere else, and run it once, and it will adapt to being in the new location. (Spaces in the path are dangerous though...) -- William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---
