FVWM: 2.0.42: Imakefile problem

From: Emilio Lopes <ecl_at_fnpc21.if.usp.br>
Date: Thu, 23 May 96 16:10 EST

Hi,

I'm using fvwm 2.0.42 and I've found a problem that you all probably
already know about that.

The following files in the fvwm subdir should be compiled with the
XPM_DEFINES and XPM_INCLUDES passed to the C compiler, but this does
not happen:

borders.c
builtins.c
colors.c
functions.c
fvwm.c
icons.c
menus.c
read.c

The only thing I changed from the original distribution was the
Fvwm.tmpl, which I include after the signature.

I've sent a message to majordomo a few minutes ago, so I think it's
save if you reply to the list.

Emilio.

-- 
 Emilio C. Lopes <mailto:ecl_at_if.usp.br>
 FINPE, Instituto de Fisica      E-mail: ecl_at_if.usp.br
 Universidade de Sao Paulo       Phone : (+55 11) 818-6724 (Voice)
 Caixa Postal 66318                      (+55 11) 818-6715 (Fax)
 05389-970  Sao Paulo - SP
 BRAZIL
/***************************************************************************
 * Fvwm Imake template
 *
 * Edit this file to 
 ***************************************************************************/
#ifndef XCOMM
#define XCOMM #
#endif
XCOMM Fvwm.tmpl
XCOMM Template file for Fvwm
/***************************************************************************
 * #define RenameFVWM2
 *
 * If you want to install both fvwm 1.xx and fvwm 2.xx concurently, specify
 * #define RenameFVWM2. Otherwise, comment out the following line.
 * This will affect the name of the "fvwm" binary, library, and manual.
 * I recommend that you leave this defined, to avoid confusion.
 ***************************************************************************/
#define RenameFVWM2
/***************************************************************************
 * #define FvwmCompiler
 * #define FvwmCompilerFlags
 *
 * To force a certain compiler and/or flags to be used to compile Fvwm.
 * Commonly used to force gcc to be used instead of your normal compiler
 * and/or flags that Imake would use.
 ***************************************************************************/
#define FvwmCompiler gcc
#define FvwmCompilerFlags -O2
/***************************************************************************
 * Where to search for the fvwm icons.
 *
 * Define this if you want a different search path from the default which is
 * the `bitmaps' and `pixmaps' directories beneath the X include directory.
 *
 * Note that you have to escape the ':' with a '\' otherwise make gets
 * confused, and make sure you don't have any spaces in there.
 ***************************************************************************/
#define FvwmIconPath /usr/local/X11/include/X11/bitmaps\:/usr/local/X11/include/X11/pixmaps
/***************************************************************************
 * #define HasXpm
 *
 * If you want color icons, define HasXpm as YES, and get libXpm from
 * sunsite.unc.edu (precompiled for Linux), or the source from
 * ftp.x.org.  If you want more color icons in addition to the ones
 * included in the fvwm package, check out the ctwm distribution,
 * which has lots of nice color icons.
 *
 * For monochrome, Xpm icons still work, but they're only better than regular
 * bitmaps because they're shaped (if you specify #define SHAPE).
 *
 * If Xpm is not installed with the rest of your X, set XpmLibs and
 * XpmIncs to the paths where the library and include files are located.
 ***************************************************************************/
#define HasXpm  YES
#define XpmLibs -L/usr/local/X11R6.1/lib
#define XpmIncs -I/usr/local/X11R6.1/include
#define XINCS -I/usr/X11R6.1/include
/***************************************************************************
 * #define HasRPlay
 *
 * To add builtin support for the rplay library.  Also make sure that the 
 * include and lib settings are correct for your rplay installation.
 * This currently only effects the FvwmAudio module.
 ***************************************************************************/
#define HasRPlay NO     /* YES */
#define AudioLibs -L/usr/local/lib
#define AudioIncs -I/usr/local/include
/**************************************************************************
 * InstallSample
 *
 * Set this to NO If you would not like sample.fvwmrc/system.fvwmrc to be
 * installed.
 * You probably want this if you have a modified FVWMDIR/FVWMRC. 
 *************************************************************************/
#define InstallSample YES
/**************************************************************************
 * InstallUtils
 *
 * Set this to YES if you would like the programs in the utils directory
 * installed.
 *************************************************************************/
#define InstallUtils YES
/**************************************************************************
 * InstallLibs
 *
 * Set this to YES if you would like libfvwm2.a to be installed.
 *************************************************************************/
#define InstallLibs NO
/**************************************************************************
 *
 * OPTION_DEFINES
 *
 * Pick and mix your desired options from this list and add them to
 * OPTIONS_DEFINES below:
 *
 *
 * -DMODALITY_IS_EVIL
 *
 * Totally disables motif applications ability to have modal dialogs.
 * Use with care.
 *
 *
 * -DNO_SAVEUNDERS 
 *
 * Tells the WM not to request save unders for pop-up
 * menus. A quick test using monochrome X11 shows that save
 * unders cost about 4Kbytes RAM, but saves a lot of
 * window redraws if you have windows that take a while
 * to refresh. For xcolor, I assume the cost is more like
 * 4Kbytesx8 = 32kbytes (256 color).
 *
 *
 * -DSHAPE
 *
 * If you want the Shaped window extensions.
 * Shaped window extensions seem to increase the window managers RSS
 * by about 60 Kbytes. They provide for leaving a title-bar on the window
 * without a border.
 * If you don't use shaped window extension, you can either make your 
 * shaped windows undecorated, or live with a border and backdrop around
 * all your shaped windows (oclock, xeyes)
 *
 * If you normally use a shaped window (xeyes or oclock), you might as
 * well compile this extension in, since the memory cost is  minimal in
 * this case (The shaped window shared libs will be loaded anyway). If you
 * don't normally use a shaped window, you have to decide for yourself
 *
 *
 * -DPIXMAP_BUTTONS
 *
 * Allows use of the Pixmaps on Fvwm buttons using an
 * extended version of ButtonStyle.  This option is only 
 * valid if Xpm support is compiled in (see above).
 * Compatibility with the old definition format is preserved, 
 * while introducing the following format:
 *
 * ButtonStyle 2 Pixmap btn1.xpm
 * ButtonStyle 4 Pixmap btn1.xpm btn1a.xpm
 *
 * where the first uses one pixmap for both states and the second
 * uses one for each state (first is "up").
 * 
 ***************************************************************************/
OPTION_DEFINES = -DSHAPE -DPIXMAP_BUTTONS 
/***************************************************************************
 * The following section only needs to be changed if you do not want
 * Imake's default behaviour. 
 * Uncomment and edit to suit your requirements.
 ***************************************************************************/
#define FvwmRoot /usr/local/packages/fvwm-2.0.42
/* Where do you want the fvwm binaries installed. */
#define FvwmBinDir FvwmRoot/bin
/* Where do you want the fvwm modules installed. */
#define FvwmDir FvwmRoot/lib/X11/fvwm2
/* Where do you want the fvwm libraries installed. */
#define FvwmLibDir FvwmRoot/lib
/* Where do you want the fvwm man pages installed. */
#define FvwmManPath FvwmRoot/man
#define FvwmManSuffix 1
/***************************************************************************
 * End of configuration items.  You shouldn't need to edit below here...
 ***************************************************************************/
/*
** FvwmName is the name of the module
** FvwmRc is the name of the rc file to read by default
*/
#ifdef RenameFVWM2
#define FvwmName fvwm2
#define FvwmRc .fvwm2rc
#else
#define FvwmName fvwm
#define FvwmRc .fvwmrc
#endif /* RenameFVWM2 */
#ifndef HasXpm
#define HasXpm NO
#endif
#ifndef HasRPlay
#define HasRPlay NO
#endif
#ifndef InstallLibs
#define InstallLibs NO
#endif
#ifndef InstallUtils
#define InstallUtils NO
#endif
#ifndef InstallSample
#define InstallSample NO
#endif
#ifndef XpmIncs
#define XpmIncs /* as nothing */
#endif
#ifndef XpmLibs
#define XpmLibs /* as nothing */
#endif
#ifndef AudioIncs
#define AudioIncs /* as nothing */
#endif
#ifndef AudioLibs
#define AudioLibs /* as nothing */
#endif
#if HasXpm
    XPM_DEFINES = -DXPM
   XPM_INCLUDES = XpmIncs
  XPM_LIBRARIES = XpmLibs -lXpm
#endif
#if HasRPlay
    AUDIO_DEFINES = -DHAVE_RPLAY
   AUDIO_INCLUDES = AudioIncs
  AUDIO_LIBRARIES = AudioLibs -lrplay
#endif
#ifdef FvwmCompiler
        CC = FvwmCompiler
#endif
#ifdef FvwmCompilerFlags
        CFLAGS = FvwmCompilerFlags
#endif
#ifdef FvwmBinDir
        FVWMBINDIR = FvwmBinDir
#else
        FVWMBINDIR = $(BINDIR)
#endif
#ifdef FvwmLibDir
        FVWMLIBDIR = FvwmLibDir
#else
        FVWMLIBDIR = $(USRLIBDIR)
#endif
#ifdef FvwmManPath
        MANPATH = FvwmManPath
#endif
#ifdef FvwmManSuffix
        MANSUFFIX = FvwmManSuffix
#endif
#ifdef FvwmDir
        FVWMDIR = FvwmDir
#else
        FVWMDIR = $(LIBDIR)/FvwmName
#endif
#ifndef FvwmIconPath
#define FvwmIconPath $(INCDIR)/bitmaps\:$(INCDIR)/pixmaps
#endif
   ICONPATH = FvwmIconPath
     FVWMRC = FvwmRc
        LIB = FvwmName
/* take care of libs not correctly added by Imake on some systems */
#ifdef AlphaArchitecture
KLUDGE_LIBS = -ldnet_stub
#else
#ifdef HPArchitecture
KLUDGE_LIBS = -lV3
#else
#ifdef i386SVR4Architecture
KLUDGE_LIBS = -lnsl -lsocket
#else /* all other systems shouldn't need anything */
KLUDGE_LIBS = 
#endif /* i386SVR4Architecture */
#endif /* HPArchitecture */
#endif /* AlphaArchitecture */
  FVWM_LIBS = -L$(FVWM_SRCDIR)/libs -l$(LIB) $(XPM_LIBRARIES) $(KLUDGE_LIBS)
FVWM_DEPLIB = $(FVWM_SRCDIR)/libs/lib$(LIB).a
    DEFINES = $(OPTION_DEFINES) $(XPM_DEFINES) $(AUDIO_DEFINES)
   INCLUDES = $(XINCS) $(XPM_INCLUDES) $(AUDIO_INCLUDES) -I. -I$(FVWM_SRCDIR)/libs
    DEPLIBS = $(DEPXLIB) $(FVWM_DEPLIB)
   LINTLIBS = $(LINTXLIB)
/***************************************************************************
 * 
 *      Special rules for Fvwm
 * 
 **************************************************************************/
#ifndef InstallNamedNonExec
#define InstallNamedNonExec(what,as,where) InstallNonExec(what,where/as)
#endif /* InstallNamedNonExec() */
#ifndef NullMake
#define NullMake()							_at_@\
all::									_at_@\
	_at_echo "make in $(CURRENT_DIR) done"
#endif /* NullMake */
#ifndef InstallExecTarget
#define InstallExecTarget(file,destdir)					_at_@\
install:: file								_at_@\
	$(INSTALL) -c $(INSTBINFLAGS) file $(DESTDIR)destdir
#endif /* InstallExecTarget */
/*
 * FvwmModuleTarget - generate rules for compiling and linking the 
 * program specified by $(OBJS) and $(SRCS), installing the program and its
 * man page, and generating dependencies.  It should only be used in 
 * Imakefiles that describe a single program.
 */
#ifndef FvwmModuleTarget
#define	FvwmModuleTarget(program)					_at_@\
        PROGRAM = program						_at_@\
									_at_@\
AllTarget(program)							_at_@\
									_at_@\
program: $(OBJS) $(DEPLIBS)						_at_@\
	RemoveTargetProgram($_at_)						@@\
	$(CC) -o $_at_ $(OBJS) $(LDOPTIONS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) @@\
									_at_@\
InstallProgram(program,$(FVWMDIR))					_at_@\
InstallManPage(program,$(MANDIR))					_at_@\
DependTarget()								_at_@\
LintTarget()								_at_@\
									_at_@\
clean::									_at_@\
	$(RM) $(PROGRAM)
#endif /* FvwmModuleTarget */
/*
 * FvwmProgramTarget - generate rules for compiling and linking the 
 * program specified by $(OBJS) and $(SRCS), installing the program and its
 * man page, and generating dependencies.  It should only be used in 
 * Imakefiles that describe a single program.
 */
#ifndef FvwmProgramTarget
#define	FvwmProgramTarget(program)					_at_@\
        PROGRAM = program						_at_@\
									_at_@\
AllTarget(program)							_at_@\
									_at_@\
program: $(OBJS) $(DEPLIBS)						_at_@\
	RemoveTargetProgram($_at_)						@@\
	$(CC) -o $_at_ $(OBJS) $(LDOPTIONS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) @@\
									_at_@\
InstallProgram(program,$(FVWMBINDIR))					_at_@\
InstallManPage(program,$(MANDIR))					_at_@\
DependTarget()								_at_@\
LintTarget()								_at_@\
									_at_@\
clean::									_at_@\
	$(RM) $(PROGRAM)
#endif /* FvwmProgramTarget */
#if ProjectX > 5
#ifndef FvwmCplusplusProgramTargetHelper
#define	FvwmCplusplusProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib) _at_@\
ProgramTargetName(program): $(objs) $(deplib)				_at_@\
	RemoveTargetProgram($_at_)						@@\
	CplusplusLinkRule($_at_,$(CXXLDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\
									_at_@\
CenterProgramTarget(program,$(srcs),$(objs),locallib,syslib)		_at_@\
SentinelCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) _at_@\
PurifyCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) _at_@\
ProofCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) _at_@\
									_at_@\
InstallProgram(program,$(FVWMDIR))					_at_@\
InstallManPage(program,$(MANDIR))
#endif /* FvwmCplusplusProgramTargetHelper */
#ifndef FvwmComplexCplusplusProgramTarget
#define	FvwmComplexCplusplusProgramTarget(program)			_at_@\
        PROGRAM = program						_at_@\
									_at_@\
AllTarget(program)							_at_@\
									_at_@\
FvwmCplusplusProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) _at_@\
									_at_@\
DependTarget()								_at_@\
LintTarget()								_at_@\
									_at_@\
clean::									_at_@\
	RemoveFile(ProgramTargetName(program))
#endif /* FvwmComplexCplusplusProgramTarget */
#endif /* ProjectX > 5 */
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to majordomo_at_hpc.uh.edu.
To report problems, send mail to fvwm-owner_at_hpc.uh.edu.
Received on Thu May 23 1996 - 17:23:14 BST

This archive was generated by hypermail 2.3.0 : Mon Aug 29 2016 - 19:37:59 BST