Search the web
Sign In
New User? Sign Up
gum · Galaxy User's Mail
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Building Galaxy C on HP-UX 11   Message List  
Reply | Forward Message #332 of 594 |
RE: [gum] Building Galaxy C on HP-UX 11

Here are my build notes, hope this helps. We have built on HP-UX 11 without
any problems. For the source I recommend you try to get the
merged source code from Eric Wiseblatt (eric@...) otherwise
use the gal_2_6pt msa on the source disk.

Greg Harris
<<GalaxyBuild.html>>

> -----Original Message-----
> From: Stuart Roll [SMTP:sroll@...]
> Sent: Tuesday, December 05, 2000 8:34 AM
> To: gum@egroups.com
> Subject: [gum] Building Galaxy C on HP-UX 11
>
> When Visix went belly-up there was a lot of traffic on the old GUM
> list about all the quirks of building from the source. I ignored all
> that at the time because I wasn't working with Galaxy anymore.
>
> Today I get a call from someone else in my company who needs help
> building Galaxy C for HP-UX 11 ASAP.
>
> The old FAQ doesn't mention how to build the product and (although I
> was a pretty good Galaxy programmer once) I'm kind of at a loss over
> the whole source thing. I'm honestly not sure if he even has
> the "right" source CD.
>
> Can someone either:
> a) point me to a FAQ or something that will help
> b) be willing to spend a few minutes helping me to figure out if we
> even have the right stuff
>
> Thanks in advance for your help.
>
> Stuart Roll
> AXENT Technologies, Inc.
> 703-338-8025
>
>
>
>


Tue Dec 5, 2000 5:14 pm

gregh@...
Send Email Send Email

Galaxy FAQ

Version 1.0 by Greg Harris

Building Galaxy

  1. You must start from a /visix directory. The file system gecko:/visix is a file system dedicated to Galaxy sources and maintenance. The /visix/vsx directory is the home directory for Galaxy. It contains the following sub-directories:
    • bin - contains all tools that are needed to build galaxy
    • arch - contains the RCS sources for Galaxy (as delivered by Eric Wiseblatt)
    • arch.unify - contains the RCS sources for Galaxy as purchased from Visix
    • arch.yodaya - contains the modified RCS sources for the ActiveX integration from Eric. These also are in the arch directory.
    • make - This contains the RCS Environment files for all ports that Visix supported. In order to use lroot, the configuration utility, these environment files must be in the local RCS pool since lroot calls "co" directly.
    • msa - This is the top level of the source directory. Under msa is a "master source area" for each Galaxy version. Our current version is gal280. We have not updated the files in make to be aware of the gal280 version so gal280 neets to be linked to gal2_6pt so that you can give lroot the gal2_6pt label and it will find the Environment files we want to use for gal280.
  2. When starting a new port, link or mount gecko:/visix to /visix on your machine and add /visix/vsx/bin to your path. On NT also add ../bin, ../../bin, ../../../bin to your path.
  3. To do a new extract from the arch directory, make a new empty directory under msa and cd there. Type vbuild -msa to extract the msa. Ensure that the native RCS "co" command is available. After building the msa, do vbuild -msa -makefile to build the makefile root and source.
  4. Make a new directory, such as DG_Gal280 or DG_GGal280 for English Galaxy or Global Galaxy. Change directories to that directory and run lroot. (Does not work on NT so do this on Unix and move the resulting files to NT to continue the port).
  5. Answer all of the questions lroot asks you. If doing a new port pick a similar architecture machine that is listed. The label will be gal2_6pt. The version will be 2.8.0.
  6. Type make in the top level directory.
  7. cd into the src directory.
  8. Ensure vbuild is in your path. Usually vbuild has been copied to /usr/local/bin if this is not the first Galaxy port on the platform. If you can't find vbuild, you must manaully build vbuild in the src/vbuild directory before starting the next step.
  9. Run make <target> where target is libvgalaxy or galaxyc or just pick a small one like vbuild to ensure the process is working.
  10. After the build is complete, vbuild -release <target> <directory> will build the release. For example, "vbuild -release libvgalaxy galaxyc" will build the release in install/galaxyc.

Galaxy porting

After running make in the top level directory and make galaxyc or libvgalaxy in the src directory there may be problems which need to be resolved.

  • During the build process, all source files are symbolically linked from the msa to the build directory. This is why /visix/vsx/msa/<label> must exist.
  • Never modify a source file without breaking the link. To break the link, mv the source file to a new name, usually we use <source>.sym to indicate it is the link. Copy from the msa, cp ../msa/<dir>/<source> . to create a local non-symlinked version of the file and modify that as required. If the build file shows "export" in the 5th column then copy this file to ../../include as well.
  • The utility "findco" will find all the broken links so after completeing the port it is very easy to see what files were modified and take care of checking in the changes.
  • The controlling port file (like uni_env.h) is vport.h in the vport directory.
  • If you need to modify the compile options or anything else in a makefile the contolling file is in the build directory (above src) and is called vEnviron. For example, to add -g find the CFLAGS entry and add -g.
  • You should never modify a makefile. Just remove it and from the src directory let vbuild create it. Run vbuild vwin to build the makefile and compile all the files in the vwin directory. ../vEnviron and <dir>/build control how the makefile is created by vbuild. On occasion, you may also want to modify the built in commands in BuiltinSrc.
  • On Windows always make sure to modify the release vport.h (install/galaxyc/include/vport.h) for VISION. You can not build Galaxy with these changes but you must build VISION with these changes.
     /* MSVC */
    #if (_MSC_VER >= 800 && !__HIGHC__)
    + /*
    + * Put here by Unify
    + * we don't want Galaxy's stdio stuff
    + */
    + #define vportDONT_INTERCEPT_STDIO vTrue
    #define MK_FP32(p) p
    #define vportBAD_ARPA_INET_HDR vTRUE
    #define vportBAD_ATEXIT vTRUE
    ***************
    *** 1542,1548 ****
    #if (vportBAD_STDIO_HANDLES)
    #ifndef vportBAD_STDIO_OUTPUT
    ! #define vportBAD_STDIO_OUTPUT vTRUE
    #endif
    #endif
    --- 1545,1551 ----
    #if (vportBAD_STDIO_HANDLES)
    #ifndef vportBAD_STDIO_OUTPUT
    ! #define vportBAD_STDIO_OUTPUT vFALSE
    #endif
    #endif

Galaxy control files

Adding files to a Galaxy build

The makefiles are created by vbuild so never directly edit a makefile in any directory. In each source directory is a file called build. The executable vbuild reads the build file in each directory and creates the makefile. The build file is 5 fields as follows:

File Name File Type RCS Archive # Classification Release Type
vstr CHeader rcs c2cxx export release galaxy
locale CSource rcs galaxy 1 segment string0  

  • File Name is the basename for the file.
  • File Type is the extension, vstr.h, locale.c.
  • RCS is always rcs.
  • Archive # is always c2cxx for CHeaders, it is the Galaxy intermediate archive for CSource, galaxy 1 indicates the object file will be placed in lib/galaxy1.a.
  • Classification is "export" for CHeaders if the file is copied to ../../include during the build. This is done if the file is included from more than one source directory. On platforms with limited segment names the segment name is listed for CSource files.
  • Release Type is used to indicate that the file is copied to the install area when making the release.


Forward
Message #332 of 594 |
Expand Messages Author Sort by Date

When Visix went belly-up there was a lot of traffic on the old GUM list about all the quirks of building from the source. I ignored all that at the time...
Stuart Roll
sroll@...
Send Email
Dec 5, 2000
4:33 pm

... It's over a year since I build Galaxy from source but I might be able to help. I can't promise a fast turnaround for your questions though. My notes are...
David Postill
david.postill@...
Send Email
Dec 5, 2000
4:47 pm

It's been about a year since I built from source. There are a few gotchas and a definite order to the process. Like Dave, I am available on a limited basis. ...
Michael M. Lutz
mmlutz@...
Send Email
Dec 5, 2000
5:02 pm

... I'll see if I can still remember everything here. 1: You'll need an RCS archive with everything. I think this is what you got in the distribution. 2: The...
David Charlap
shamino@...
Send Email
Dec 5, 2000
5:11 pm

Here are my build notes, hope this helps. We have built on HP-UX 11 without any problems. For the source I recommend you try to get the merged source code...
Greg Harris
gregh@...
Send Email
Dec 5, 2000
5:14 pm

... Building the C product is not too bad. I've done it several times while trying to get to the C++ version. In this message ...
Dave Rutherford
drutherf@...
Send Email
Dec 5, 2000
5:17 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help