In regard to: Re: gnucash-1.2.2 Makefile broken for non-Linux case, Rob...:
>"David O'Brien" <[EMAIL PROTECTED]> writes:
>
>> There is another problem building gnucash-1.2.2 -- an "All the
>> World's Linux" problem.
>
>This attitude is not likely to inspire many people to go above and
>beyond the call of duty to help you. If most of the people here are
>running Linux, then what would you expect to be better supported?
>
>If you want it fixed, then you ask, and it'll likely get fixed. Only
>if the people you're trying to work with demonstrate a decided
>animosity toward non-Linux systems would I feel you'd be justified to
>adopt this attitude..
Well put Rob, and in the short time I've been on this I haven't seen evidence
to suggest that you or anyone else involved with GnuCash has any animosity
to non-Linux Unix systems. As someone else that uses mainly non-Linux Unix
systems, I "feel David's pain", but as you have suggested and my experience
has been that it's generally easier to get things fixed by constructively
pointing out areas for improvement than it is to put the authors on the
defensive from the get-go. There are indeed GNU/GNOME packages whose
authors display the kind of narrow thinking David is railing against, but
AFAICT GnuCash isn't one of them.
>> However gnucash's Makefiles are not portable -- one calls ``make''
>> directly.
>
>These are just oversights. No one is going out of their way to make
>your life difficult. All you had to say was "The make files use make
>where they should probably be using ${MAKE}. Here's a patch to
>correct the problem."
Well put, again. I hope to have time to contribute some constructive comments
and patches to GnuCash in the next few weeks. Here's part of a patch that
helped me build GnuCash on alpha-dec-osf4.0f with the vendor compiler. The
rest of the patch needs to be tidied up a bit, but this part improves the
situation some by itself.
The patch
1) adds top_srcdir to Makefile.init.in, since one of the Makefiles that
includes it needs top_srcdir but it isn't set in that particular Makefile.
This may not be the right call -- it should probably be substituted directly
into the Makefile.ins that are missing it.
2) It removes instances where (gcc|egcs)-specific C flags are in configure.in
or the Makefile.ins. As long as CFLAGS is substituted into the Makefiles by
configure, there shouldn't be any need to augment CFLAGS.
3) It fixes a problem with finding libXpm and later libXmHTML on platforms
where $x_libraries (after a call to AC_PATH_X and AC_PATH_XTRA) is empty (i.e.
the libraries and header files are in standard places). Using X_PRE_LIBS
may not be the right solution here either, so further work may be necessary
on this.
4) It makes sure that any CPPFLAGS specified by the person running configure
(e.g. -I/path/to/Xpm/headers -I/path/to/XmHTML/headers) is passed into the
Motif Makefile.in, so header files are found.
5) It updates the top level Makefile.init.in so that @CXX@ is used in place
of @C++@, since that's the common autoconf "variable" for it. I don't think
C++ stuff is used anywhere here anyway so it's probably not needed, but I
noticed it so I thought I would fix it.
Some areas that this patch doesn't address that may be helped by further
work/testing:
a) The libtool stuff could be updated to 1.3.3.
b) The Makefile.common has a number of rules that include dependency generation
using flags that are specific to (or only work as expected for) gcc/egcs. Was
Makefile.common generated in part by Automake? In any case, recent versions
of automake are less gcc-centric with regard to dependency generation, so it's
possible that the dependency generation stuff in Makefile.common could be
updated/improved if a recent version of automake were involved.
c) src/swig/perl5/Makefile.in uses gcc to build gnucash.so. What might
be better is to have configure use perl itself to figure out what C compiler
to use and CFLAGS/LDFLAGS to pass to generate a SO perl module. This could
be done using the `Config' perl module and the various settings it contains
regarding how to build shared objects on the platform in question.
diff -ur gnucash-1.2.1.orig/Makefile.init.in gnucash-1.2.1/Makefile.init.in
--- gnucash-1.2.1.orig/Makefile.init.in Sat May 29 18:45:50 1999
+++ gnucash-1.2.1/Makefile.init.in Sun Aug 15 21:59:08 1999
@@ -5,6 +5,7 @@
export PATH := @GUILE_BIN@:@ABSOLUTE_TOP_SRCDIR@/lib/g-wrap-install/bin/:${PATH}
srcdir = @srcdir@
+top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix=@prefix@
@@ -23,7 +24,7 @@
includedir=@includedir@
CC = @CC@
-C++ = @C++@
+CXX = @CXX@
CFLAGS = @CFLAGS@
CPPFLAGS = @CPPFLAGS@
INSTALL = @INSTALL@
diff -ur gnucash-1.2.1.orig/configure.in gnucash-1.2.1/configure.in
--- gnucash-1.2.1.orig/configure.in Mon Jul 5 18:13:57 1999
+++ gnucash-1.2.1/configure.in Sun Aug 15 21:58:25 1999
@@ -180,7 +180,7 @@
AC_CHECK_LIB(Xpm, XpmReadFileToXpmImage,
AC_DEFINE(HAVE_XPM,1) X_LIBS="-lXpm $X_LIBS",
- AC_DEFINE(HAVE_XPM,0), -L$x_libraries -lX11)
+ AC_DEFINE(HAVE_XPM,0), $X_PRE_LIBS -lX11 $X_LIBS $X_EXTRA_LIBS)
# Don't build the xmhtml source if user already has it installed...
# this is ugly, there must be a nicer way of setting this up ...
@@ -347,7 +347,7 @@
AC_SUBST(GNC_RUNTIME_SHAREDIR)
AC_SUBST(GNC_RUNTIME_CONFIGDIR)
-CFLAGS="${CFLAGS} -Werror -Wno-unused"
+#CFLAGS="${CFLAGS} -Werror -Wno-unused"
ABSOLUTE_TOP_SRCDIR=`pwd`
AC_SUBST(ABSOLUTE_TOP_SRCDIR)
--- gnucash-1.2.3.orig/src/swig/perl5/Makefile.in Mon Aug 2 01:15:19 1999
+++ gnucash-1.2.3/src/swig/perl5/Makefile.in Sun Aug 15 23:05:23 1999
@@ -33,8 +33,7 @@
# set -Dbool=char because the perl headers need this
# use -fpic so that we can create loadable module
-CFLAGS := @CFLAGS@ ${INCLPATH} -Dbool=char -fpic -Wno-unused
-CFLAGS := $(filter-out -Werror,${CFLAGS})
+CFLAGS := @CFLAGS@ ${INCLPATH} -Dbool=char #-fpic -Wno-unused
LDFLAGS = @LDFLAGS@
--- gnucash-1.2.3.orig/src/motif/Makefile.in Mon Aug 2 01:15:08 1999
+++ gnucash-1.2.3/src/motif/Makefile.in Sun Aug 15 23:08:44 1999
@@ -35,7 +35,7 @@
-I@srcdir@/../../lib/Xbae-4.6.2-linas \
-I@top_srcdir@/lib/g-wrap-install/include \
-I@top_srcdir@/src/g-wrap \
- -I${includedir}
+ -I${includedir} \
@CPPFLAGS@
CFLAGS = @CFLAGS@ @X_CFLAGS@ -DFUNCPROTO -DCELL_WIDGETS=1 ${INCLPATH}
Tim
--
Tim Mooney [EMAIL PROTECTED]
Information Technology Services (701) 231-1076 (Voice)
Room 242-J1, IACC Building (701) 231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164
----- %< -------------------------------------------- >% ------
The GnuCash / X-Accountant Mailing List
To unsubscribe, send mail to [EMAIL PROTECTED] and
put "unsubscribe gnucash-devel [EMAIL PROTECTED]" in the body