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
#