allen@UXC.CSO.UIUC.EDU (Michael Allen) (07/21/89)
I am running on a sun 4/260, sunos 4.0.3. the makefiles of InterViews version 2.5 and GNU make ver3.54 seem to be incompatible. When using GNU make, imake is called over and over until at some point the message "ctr0: no /dev/zero" is printed. I have also sent this to Mark Linton (the principal author of InterViews). I compiled GNU make using gcc ver. 1.35. The Makefile is appended to this message. Using /usr/bin/make (sun distribution), make -n bootstrap results in: echo "##############################################################" echo "Did you remember to check the configuration parameters in the" echo "the directory config/InterViews and set BOOTSTRAPCFLAGS?" echo "##############################################################" echo "" CPU=`/bin/sh ./src/bin/scripts/cpu.sh ./config/InterViews` make X=X11 createdirs ./src/bin/scripts/cpu.sh: ./src/bin/scripts/cpu.sh: No such file or directory *** Error code 1 make: Fatal error: Command failed for target `bootstrap' Using GNU make, ver 3.54, gnumake -n bootstrap results in: imake -T "IVImake.tmpl" -I./config/InterViews -I./config -DTOPDIR=. imake: No such file or directory: No description file. Stop. gnumake: *** [Makefile] Error 1 In addition, the Makefile has been removed, even though I used the '-n' flag. ===================Makefile======================== # Makefile generated by imake - do not edit! # $XConsortium: imake.c,v 1.41 89/02/21 11:42:35 jim Exp $ # # The cpp used on this machine replaces all newlines and multiple tabs and # spaces in a macro expansion with a single space. Imake tries to compensate # for this, but is not always successful. # # # "IVImake.tmpl" - generic imake template customized for InterViews # # You may change platform-specific parameters in the appropriate .cf # configuration files. You may set site-wide parameters in the file # IVsite.def. You may need a full rebuild if you change any parameters. # # architecture: SUN4 # platform: $XConsortium: sun.cf,v 1.7 89/03/02 13:28:18 jim Exp $ # operating system: SunOS 4.0 # # Generic make variables # SHELL = /bin/sh TOP = . AR = ar cq BOOTSTRAPCFLAGS = BOOTSTRAPCPUCMD = /bin/sh $(SCRIPTSRC)/cpu.sh $(IVCONFIGSRC) BOOTSTRAPMACROS = BOOTSTRAPCFLAGS='$(BOOTSTRAPCFLAGS)' DESTDIR='$(DESTDIR)' \ EXTRA_CFLAGS='$(EXTRA_CFLAGS)' CC = /home/gnu/bin/gcc COMPRESS = compress CPP = /lib/cpp $(STD_CPP_DEFINES) PREPROCESSCMD = /home/gnu/bin/gcc -E $(STD_CPP_DEFINES) DEPEND = makedepend GENCLASS = genclass IMAKE = imake INSTALL = install LD = ld LINT = lint LINTLIBFLAG = -C LINTOPTS = -axz LN = ln -s MAKE = make X=$X MKDIRHIER = /bin/sh $(SCRIPTSRC)/mkdirhier.sh MV = mv CP = cp RANLIB = ranlib RANLIBINSTFLAGS = RM = rm -f TAGS = ctags TROFF = psroff STD_CPP_DEFINES = STD_DEFINES = EXTRA_LOAD_FLAGS = EXTRA_LIBRARIES = INSTBINFLAGS = -m 0755 INSTUIDFLAGS = -m 4755 INSTLIBFLAGS = -m 0664 INSTINCFLAGS = -m 0444 INSTMANFLAGS = -m 0444 INSTDATFLAGS = -m 0444 INSTKMEMFLAGS = -m 4755 CDEBUGFLAGS = CFLAGS = $(CDEBUGFLAGS) $(EXTRA_CFLAGS) \ $(INCLUDES) $(STD_DEFINES) $(DEFINES) LINTFLAGS = $(LINTOPTS) $(INCLUDES) $(STD_DEFINES) $(DEFINES) -DLINT LDFLAGS = $(CDEBUGFLAGS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES) MACROFILE = sun.cf IMAKE_CMD = $(IMAKE) $(IMAKEOPTS) $(EXTRA_IMAKEOPTS) RM_CMD = $(RM) .emacs_* *.CKP *.ln *.BAK *.bak *.a *.o *..c ,* *~ \ a.out core errs tags TAGS make.log make.out # # Project.tmpl - project-specific configuration file # DESTDIR = USRLIBDIR = $(TOP)/lib/$$CPU BINDIR = $(TOP)/bin/$$CPU.$X LOCALBINDIR = $(TOP)/bin/$$CPU INCROOT = $(TOP)/include INCDIR = $(INCROOT)/InterViews TEMPLATESDIR = $(INCDIR)/Templates LIBDIR = $(DESTDIR)/usr/lib/X11 CONFIGDIR = $(LIBDIR)/config IVCONFIGDIR = $(CONFIGDIR)/InterViews MANPATH = $(DESTDIR)/usr/man MANSOURCEPATH = $(MANPATH)/man MANDIR = $(MANSOURCEPATH)n LIBMANDIR = $(MANSOURCEPATH)n CONFIGSRC = $(TOP)/config IVCONFIGSRC = $(CONFIGSRC)/InterViews IVSRC = $(TOP)/src INCLUDESRC = $(IVSRC)/InterViews TEMPLATESSRC = $(INCLUDESRC)/Templates BINSRC = $(IVSRC)/bin IMAKESRC = $(BINSRC)/imake SCRIPTSRC = $(BINSRC)/scripts LIBINTERVIEWSSRC = $(IVSRC)/libInterViews LIBGRAPHICSRC = $(IVSRC)/libgraphic LIBTEXTSRC = $(IVSRC)/libtext MANSRC = $(TOP)/man IMAKETMPL = "IVImake.tmpl" IMAKEOPTS = -T $(IMAKETMPL) -I$(IVCONFIGSRC) -I$(CONFIGSRC) CC = /home/gnu/bin/g++ LD = /home/gnu/bin/g++ DEPENDCFLAGS = $(CFLAGS) -I/home/gnu/include/g++-include INSTPGMFLAGS = -s AFTERINSTALL = $(RM) INCLUDES = -I$(SRC) -I$(GEN) -I$(IVSRC) -I$(INCLUDESRC)/Std TEMPLATES = $(TEMPLATESSRC) LIBINTERVIEWS = $(LIBINTERVIEWSSRC)/$M/libInterViews$X.a LIBGRAPHIC = $(LIBGRAPHICSRC)/$M/libgraphic.a LIBTEXT = $(LIBTEXTSRC)/$M/libtext.a AOUT = a.out SRC = . GEN = Generated M = SUN4 X = X11 # # iv - root of the InterViews directory tree # # "make bootstrap" installs executables needed by "make World". # "make World" builds InterViews for the first time. # "make install" installs the binaries and libraries relative to $(TOP). # "make install.config" installs the config files into /usr. # "make install.include" installs the include files relative to $(TOP). # "make install.man" installs the man pages into /usr. # "make format" formats the InterViews manual. # "make print" formats and sends the InterViews manual to the printer. # "make clean" removes the current platform's binaries and libraries. # SUBDIRS = src all:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "making all in $$i"; \ (cd $$i; $(MAKE) EXTRA_CFLAGS='$(EXTRA_CFLAGS)' all); \ else continue; fi; \ done depend:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "depending in $$i"; \ (cd $$i; $(MAKE) EXTRA_CFLAGS='$(EXTRA_CFLAGS)' depend); \ else continue; fi; \ done install:: createdirs install.config:: -@for i in config; \ do \ if [ -d $$i ]; then \ echo "installing config files in $$i"; \ (cd $$i; $(MAKE) DESTDIR='$(DESTDIR)' install.config); \ else continue; fi; \ done install.include:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "installing include files in $$i"; \ (cd $$i; $(MAKE) DESTDIR='$(DESTDIR)' install.include); \ else continue; fi; \ done install.man:: -@for i in man; \ do \ if [ -d $$i ]; then \ echo "installing man pages in $$i"; \ (cd $$i; $(MAKE) DESTDIR='$(DESTDIR)' install.man); \ else continue; fi; \ done format:: -@for i in man; \ do \ if [ -d $$i ]; then \ echo "formatting in $$i"; \ (cd $$i; $(MAKE) format); \ else continue; fi; \ done print:: -@for i in man; \ do \ if [ -d $$i ]; then \ echo "printing in $$i"; \ (cd $$i; $(MAKE) print); \ else continue; fi; \ done Makefiles:: -@for i in config; \ do \ if [ -d $$i ]; then \ echo "Making Makefiles in $$i"; \ if [ -f $$i/Makefile ]; then \ $(RM) $$i/Makefile.bak; \ $(MV) $$i/Makefile $$i/Makefile.bak; \ fi; \ $(IMAKE_CMD) -DTOPDIR=../$(TOP) -f $$i/Imake.file \ -s $$i/Makefile; \ (cd $$i; $(MAKE) Makefiles); \ else continue; fi; \ done Makefiles:: -@for i in man $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "Making Makefiles in $$i"; \ if [ -f $$i/Makefile ]; then \ $(RM) $$i/Makefile.bak; \ $(MV) $$i/Makefile $$i/Makefile.bak; \ fi; \ $(IMAKE_CMD) -DTOPDIR=../$(TOP) -f $$i/Imakefile \ -s $$i/Makefile; \ (cd $$i; $(MAKE) Makefiles); \ else continue; fi; \ done clean_maybe:: # # Bootstrap executables that must be installed before InterViews # can be built. # bootstrap:: @echo "##############################################################" @echo "Did you remember to check the configuration parameters in the" @echo "the directory config/InterViews and set BOOTSTRAPCFLAGS?" @echo "##############################################################" @echo "" @CPU=`$(BOOTSTRAPCPUCMD)` $(MAKE) createdirs bootstrap:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "bootstrapping in $$i"; \ (cd $$i; $(MAKE) $(BOOTSTRAPMACROS) bootstrap); \ else continue; fi; \ done bootstrap:: @echo "" @echo "##############################################################" @echo "Extend your PATH if necessary and put CPU in your environment" @echo "before continuing with the rest of the build process." @echo "##############################################################" # # Build InterViews for the first time. Warning: clean removes # make.log and make.out. # WORLDOPTS = -k World:: @echo "" @echo "Building InterViews 2.5" @echo "" @echo "##############################################################" @echo "Did you remember to extend your PATH to include imake et al" @echo "and put CPU in your environment?" @echo "##############################################################" @echo "" @date @echo "" @$(MAKE) Makefile @$(MAKE) Makefiles @$(MAKE) clean_maybe @$(MAKE) depend @$(MAKE) $(WORLDOPTS) @echo "" @date @echo "" @echo "Build of InterViews 2.5 complete." @echo "" # # Create the directories in which to install files if necessary. # DIRS_TO_CREATE = \ $(USRLIBDIR) \ $(BINDIR) \ $(LOCALBINDIR) createdirs:: $(MKDIRHIER) $(DIRS_TO_CREATE) # # Common rules for all Makefiles from "IVImake.tmpl" - do not edit. # clean:: $(RM_CMD) \#* Makefile:: -@if [ -f Makefile ]; then \ $(RM) Makefile.bak; \ $(MV) Makefile Makefile.bak; \ else exit 0; fi $(IMAKE_CMD) -DTOPDIR=$(TOP) install:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "installing in $$i"; \ (cd $$i; $(MAKE) DESTDIR='$(DESTDIR)' install); \ else continue; fi; \ done clean:: -@for i in $(SUBDIRS); \ do \ if [ -d $$i ]; then \ echo "cleaning in $$i"; \ (cd $$i; $(MAKE) RM_CMD='$(RM_CMD)' clean); \ else continue; fi; \ done # # dependencies generated by makedepend #