[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gv: imake & egcc? Cannot specify -o with -c and multiple compilations



The imake/cpp issue has been noted by the egcs developers; see
http://www.cygnus.com/ml/egcs/1998-Feb/0651.html .

On Mon, Feb 23, 1998 at 12:44:57PM -0800, Karl M. Hegbloom wrote:
> >>>>> "Karl" == Karl M Hegbloom <karlheg@bittersweet.inetarena.com> writes:
> 
>     Karl>  I'm trying to recompile `gv', and am having trouble.
> 
>     Karl>  Is this a bug against xlib6g-dev, or gcc?  Has it been
>     Karl>  reported?
> 
>  This is a manifestation of bug#17307.  I tried the imake commandline
>  given in the bug report, but it doesn't work:
> 
> imake -Di386=1 -Di486=1 -D__i386__=1 -D__i486__=1 -DUseInstalled -I/usr/X11R6/lib/X11/config
> % make Makefiles

> % make depend
> depending in ./doc...
> make[1]: Entering directory `/usr/src/debian/Work/gv/doc'

> gccmakedep  --   -I/usr/X11R6/include -I/include  -Dlinux LinuxMachineDefines -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_REENTRANT   -DFUNCPROTO=15 -DNARROWPROTO  -DNON_BLOCKING_IO     -DUSE_SIGNAL_HANDLER    -DUSER_DEFAULTS=\"~/.gv\" -DGV_LIBDIR=\"/usr/X11R6/lib/X11/gv/\" -DGV_CODE  -DUSE_FALLBACK_STYLES        -- Aaa.c Aaa_bison.c Aaa_lex.c Button.c Clip.c FileSel.c Frame.c Ghostview.c MButton.c Switch.c Vlist.c actions.c callbacks.c confirm.c dialog.c doc_misc.c error.c file.c info.c main.c media.c misc.c miscmenu.c misc_private.c note.c options.c options_fs.c options_gs.c options_gv.c options_setup.c process.c popup.c ps.c resource.c save.c scale.c signal.c version.c widgets_misc.c zoom.c      Scrollbar.c         
> make: *** [depend] Interrupt
> 
> % 
> 
>  ... Note that on the `gccmakedep' line, "LinuxMachineDefines" is not
>  expanded.  It should be -D_i386, as far as I can tell.
> 
>  Is this an error in the `specs' file that was used to compile `cpp' and
>  `gccmakedep'?  That's my initial diagnosis.

The problem is that cpp itself has neither ARCHITECTURE or __ARCHITECTURE__
defined anymore.

penguin ray 13:27 /tmp> touch foo.c
penguin ray 13:27 /tmp> cpp -dM foo.c
#define linux 1
#define __ELF__ 1
#define unix 1

Note that gcc calling cpp defines them:
penguin ray 13:27 /tmp> gcc -E -dM foo.c
#define __linux__ 1
#define linux 1
#define __i386__ 1
#define __GNUC_MINOR__ 90
#define __i486__ 1
#define i386 1
#define i486 1
#define __unix 1
#define __unix__ 1
#define __GNUC__ 2
#define __linux 1
#define __ELF__ 1
#define unix 1

As imake/xmkmf calls cpp directly, it fails.
in Imake.cf:
#ifdef linux 
# define MacroIncludeFile <linux.cf>
# define MacroFile linux.cf
# undef linux
# define LinuxArchitecture
# ifdef i386
#  define i386Architecture
#  undef i386
# endif /* i386 */
...

I think that the best fix is to rebuild cpp so that it has __MACHINE__
defined, and to modify imake's *.cf files to rely on __MACHINE__ rather than
MACHINE .

Ray
-- 
Obsig: developing a new sig


--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .


Reply to: