RJLRef: $CASE/gen/ver_1l/aareadme.2k0316 (renamed from aareadme.genv11) SUBJ: Building genv11 for bde2alpha ================================================================== Hello all. Thanks to NaiyanaT and JoeF for reminding me about genv11 for bde. The correct genmerge=genv11 executable command to run before (or while) making bde/pr_util is: $CASE/99s523/genmerge/chgenv11/chgen/executables/chgen This shell proc is platform-independent, and runs ./$HOSTTYPE/chgen, which does exist for decstations as well as alpha's: --------------------------------- jupiter.cs.uml.edu(106)> pwd /usr/proj3/case/99s523/genmerge/chgenv11/chgen/executables jupiter.cs.uml.edu(107)> lg alpha dec* alpha: total 1240 -rwxr-xr-x 1 lechner 98s523 1261568 May 12 1999 chgen11 decstatiol 616 -rwx--x--x 1 lechner 98s523 615552 Sep 24 16:46 chgen11 jupiter.cs.uml.edu(108)> ------------------------------------ Although you don't have to recompile chgen every time you build bde, you hould re-run chgen, to get an up-to-date pr_util library. With gen 10.2, vdhamoda says the backup (and altered) pr_util library in her apr directory must be used. When using genmerge=genv11 she claims that is not necessry. (there were parallel bug-fixes I presume). The value of HOSTTYPE is a system environment variable: E.g., ------- cs.uml.edu(63)> echo $HOSTTYPE alpha ------ Unfortunately only csh and tcsh know about it - sh may not. $HOSTTYPE is similar to $MACHINE, which is compiler-defined but not known at shell command level: ------------- jupiter.cs.uml.edu(65)> echo $MACHINE MACHINE: Undefined variable. -------------- The repository versions of chgen should all have a shell proc in genversion/executables/chgen that runs the CORRECT platform-specific chgen executables, like bde/executables/bde. Please incorporate and USE it. Do NOT bind in HOSTTYPE to your test commands or Imakefiles. When you make bde on one CPU, pr_util/Makefile should run the chgen executable on the same CPU type. Building chgen was never part of pr_util's Imakefile, only running it was. (Although in principle chgen should produce the same pr_util content regardless of its binary's HOSTTYPE, there is no use tempting fate here, or risking accidental HOSTTYPE conflicts by: not knowing which platform your latest executable was compiled for, ignoring the abort message, and trusting the earlier version of pr_util that your make run did not change.) Note to Jeff Feinberg: --------------------- Genmerge may not have its own platform-independent shell proc. If it does, it should run the chgen in gen/exec*/$HOSTTYPE or gen/bin/$HOSTTYPE (bin should be renamed executables for consistency with bde). -------- Both gen and bde Imakefiles probably leave the compiled gen or bde in */src, but they should move it to */exec*/$HOSTTYPE, otherwise you must remember to move it manually before it can be used properly. R Lechner ================================================= > > Hi Joe, > > > I checked the Makefile in the parent directory, bde, and determined that > > it did indeed have the macros that I wanted. Remember, though, that the make > > failed on the pr_util references. I simply opened the Makefile in the bde > > directory, found a line that said: > > > > SUBDIRS = pr_util src > > > > and took the pr_util reference out. I ran the Makefile in the bde > > directory, which drove the Makefile in the src subdirectory and everything built > > cleanly and I was able to start the BDE utility that got built as a result. > > I think we don't need to remove pr_util. I have changed Makefile in > subdirectory pr_util at line : > > CHGEN > =/usr/proj3/case/97f522/bde2java/hhuang/chgen/executables/${HOSTTYPE}/chgen10.2 > > from ${HOSTTYPE} -> alpha because there is no declaration of HOSTTYPE. > > >From changing this, I can completely buid bde. However, I haven't run bde > yet since I can't run bde at home. Hopefully, it works. > > Naiyana >