[comp.windows.x] Contribs under X11R3

jdg@elmgate.UUCP (Jeff Gortatowsky CUST) (04/04/89)

I guess I should be very sorry that X gods decided to remove
the auto make facility for the contrib directories, since they worked
on my Sun 3/160 under R2.  Anyways the problem. I'm an X11 novice
programmer who wanted to create my first application using
"someone's" toolkit or widgets, at least just to get started.

I tried making the HP widgets.  It blew up.  I tried the Xr11
toolkit, the make on that blew up.  I tried the Andrew toolkit,
yup, it blew up too.   I'm not talking way into the make procedures
either.  I mean most blew up with files not found, or syntax/semantic
problems within a file or two of getting started!

The core release built just dandy.  What did they do?  Release the
contrib's without even attempting a make?  How does on go about
makeing the major toolkits and widget packages under R3?  Hand edit
every dang file?   If anyone can give me pointer or two about this
I would be grateful (especially the HP widgets (HP you there?)).

Also why did they change the includes so drastically?  No cursorfont.h,
no Misc.h, etc...  Al the contribs use these.

Thank you for the replies, I'm just tring to create my first X11
program using the building blocks other have made so to get a flavor
for programming under X11.  I shudder at thought of haveing to
build my own classes under the Athena widgets when others worked
so hard to create higher level widgets.

		Jeff


-- 
Jeff Gortatowsky-Eastman Kodak Company  .....rochester!kodak!elmgate!jdg
(use uuhosts or such to find path to rochester)
Eastman Kodak makes film not comments.  Therefore these comments are mine
not theirs.

rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (04/04/89)

    I guess I should be very sorry that X gods decided to remove
    the auto make facility for the contrib directories,

We didn't really "remove" it, we simply failed to construct it for R3.

    The core release built just dandy.  What did they do?

For the core, worked extremely hard for long hours to make it build.

    Release the contrib's without even attempting a make?

Yes.  The contrib software is "as is", we did not (and still do not) have the
resources to attempt an "integration" of contributed software.  If you don't
like the state it's in, and don't have time to spend on it yourself, pretend it
isn't there.

    Also why did they change the includes so drastically?

I don't think we did.

    No cursorfont.h,

The file exists, but there was a bug in our installation that caused it not to
get installed.  This was fixed in the first patch we released (back in
November).

    no Misc.h,

It's now called XawMisc.h.  The name change was felt to be important, to make
it clear that this was part of a non-standard interface.

    etc...

Since I don't know what "etc." consists of, it's rather difficult to comment.

mayer@hplabsz.HPL.HP.COM (Niels Mayer) (04/05/89)

In article <8904041058.AA11287@EXPIRE.LCS.MIT.EDU> rws@EXPO.LCS.MIT.EDU (Bob Scheifler) writes:
>
>    no Misc.h,
>
>It's now called XawMisc.h.  The name change was felt to be important, to make
>it clear that this was part of a non-standard interface.

If it was important, why not go all the way and drop all the athena widget
headers into a completely separate directory? The X11 include directory is
cluttered enough as is. I think /usr/include/X11 should only contain
interface definitions parts of X that have been blessed as standard by the
consortium.

The athena widget headers should be in /usr/include/Xaw in the same
way that the HP widget headers reside in /usr/include/Xw. (Ultimately,
I'd prefer /usr/include/X11/Xaw and /usr/include/X11/Xw).

This is just an opinion.... I'm sure there must be good reasons for
having done things otherwise.

-------------------------------------------------------------------------------
	    Niels Mayer -- hplabs!mayer -- mayer@hplabs.hp.com
		  Human-Computer Interaction Department
		       Hewlett-Packard Laboratories
			      Palo Alto, CA.
				   *

janssen@titan.sw.mcc.com (Bill Janssen) (04/08/89)

Here are my build-notes for the Andrew system (which I like a lot):

Setting up the environment:

In "/x11r3/contrib/toolkits/andrew/config/andrewenv.h":
	Set LEVEL_ENV to 4.
	Defined X11_ENV.
	DITROFF_ENV defined.  (MCC STP has ditroff in /usr/andrew/bin)
	RESOLVER_ENV defined (though I don't really know!).
	added new var MCC_STP_ENV defined to 1  (for our print commands)

In "/x11r3/contrib/toolkits/andrew/config/Sun.macros":
	XBASEDIR set to "/x11r3"  (my link to the real location)
	XSRCDIR set to "/x11r3"
	DESTDIR set to "/andrew"  (my link to the real location)

In "/x11r3/contrib/toolkits/andrew/atk/support/print.c"
	Added new section of print contants (such as print_PRINTCOMMAND)
	conditionally defined if MCC_STP_ENV is defined.  This tells
	Andrew how to invoke troff.

In "/x11r3/contrib/toolkits/andrew/atk/ltext/ltext.c"
	Added indentation for "defclass" and "defmethod".

In "/x11r3/contrib/toolkits/andrew/overhead/util/lib/andrewdir.c"
	Set default Andrew root path to "/andrew" by changing the string
	"/usr/andrew" to "/andrew".  This defines the default setting of
	the environment variable ANDREWDIR.

The build instructions assume that andrew is a subdirectory of contrib.
I moved the Imakefile from /x11r3/contrib to /x11r3/contrib/toolkits, and
removed the references to other subdirectories of /x11r3/contrib.

In /x11r3/contrib/toolkits/Imakefile, changed

  AndrewMakefiles::
	$(RM) andrew/Makefile.bak
	-$(MV) andrew/Makefile andrew/Makefile.bak
	cd andrew; ../$(IMAKE) -DTOPDIR=. -TImake.template\
		-Iconfig -s Makefile

to

  AndrewMakefiles::
	$(RM) andrew/Makefile.bak
	-$(MV) andrew/Makefile andrew/Makefile.bak
	cd andrew; $(IMAKE) -DTOPDIR=. -TImake.template\
		-Iconfig -s Makefile

which is just removing the relative location of the imake program.

Used imake to make the Makefile:

  /x11r3/util/imake/imake -DTOPDIR=/x11r3 \
    -T /x11r3/util/imake.includes/Imake.tmpl -s mm

Then

  cd /x11r3/contrib/toolkits
  make -f mm AndrewMakefiles
  cd andrew
  make Makefiles
  make World

First error occurred while attempting to build
/x11r3/contrib/toolkits/andrew/atk/basics/xfontdesc.o,
in that the file $(XBASEDIR)/include/X11/cursorfont.h was not in place.
Copied it from /x11r3/X11/cursorfont.h, and said "make World" again.

Received a number of apparently harmless error messages from the
"make depend" steps, along the lines of "cannot find file foo.eh".
--