Re: Problem building master with autotools

2017-08-25 Thread Alex Aycinena
Geert,

On Fri, Jul 21, 2017 at 1:52 AM, Geert Janssens 
wrote:

> Op woensdag 19 juli 2017 22:09:40 CEST schreef Alex Aycinena:
> > On Tue, Jul 11, 2017 at 3:29 PM, Eric Theise 
> wrote:
> > > Hi everyone,
> > >
> > > I seem to be having the same problem as Alex. It's my first time
> trying to
> > > do a local build. I'm using an up-to-date Ubuntu 16.04 virtual machine.
> > >
> > > Eric
> > >
> > > ...
> > > make[4]: Leaving directory '/home/erictheise/Repos/
> > > erictheise/gnucash/build/src/import-export/log-replay'
> > > Making all in test
>

 

> > ../../../src/engine/test-core/.libs/libgncmod-test-engine.a(
> test-engine-s
> > > tuff.o): undefined reference to symbol '__gxx_personality_v0@@CXXABI_
> 1.3'
> > > //usr/lib/x86_64-linux-gnu/libstdc++.so.6: error adding symbols: DSO
> > > missing from command line
> > > collect2: error: ld returned 1 exit status
> > > Makefile:838: recipe for target 'test-import-pending-matches' failed
>




> >
> > As an update on this issue, I have been able to build with autotools and,
> > through a process of elimination, have discovered that the problem occurs
> > when I use the --enable-debug configure switch, but not otherwise. In
> other
> > words:
> >
> > ../gnucash/configure --srcdir=/home/gnucash-dev/gitcheckouts/gnucash
> > --prefix=/opt/gnucash-git/gnucash --enable-debug --enable-doxygen
> > --enable-error-on-warning --enable-compile-warnings=yes
> > --with-dbi-dbd-dir=/usr/lib64/dbd --enable-ofx --enable-aqbanking
> > --enable-locale-specific-tax --enable-python
> >
> > fails make with the indicated error while:
> >
> > ../gnucash/configure --srcdir=/home/gnucash-dev/gitcheckouts/gnucash
> > --prefix=/opt/gnucash-git/gnucash --enable-doxygen
> > --enable-error-on-warning --enable-compile-warnings=yes
> > --with-dbi-dbd-dir=/usr/lib64/dbd --enable-ofx --enable-aqbanking
> > --enable-locale-specific-tax --enable-python
> >
> > succeeds through make, make check and, as root, make install.
> >
> > I don't know why though.
> >
> > Alex
>
> I have noticed the same behavior on my laptop. I'm away from home so I
> can't
> test if I can also reproduce it on the workstation I usually develop on.
> Will
> do that when I get back home unless someone figures out a fix before that
> time.
>
> Regards,
>
> Geert
>

I can confirm that Geert's commit 64f36323b23d6dc9eb2eab9eb2630f1efc0a64ef
fixes this problem and the --enable-debug switch with autotools no longer
causes this problem on my system.

Thanks,

Alex
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: Moving .gnucash and friends from $HOME to XDG_DATA_HOME (and impact on other applications like KMyMoney)

2017-08-25 Thread John Ralls

> On Aug 24, 2017, at 5:19 AM, Geert Janssens  > wrote:
> 
> On donderdag 24 augustus 2017 12:11:48 CEST John Ralls wrote:
>>> On Aug 24, 2017, at 8:57 AM, Geert Janssens >> >
>>> wrote:> 
>>> On woensdag 23 augustus 2017 23:21:23 CEST John Ralls wrote:
 A new default should apply only to new installations and should be
 overridden by $GNC_DOT_DIR and $AQBANKING_HOME; we should continue to
 include ~/.gnucash and ~/.aqbanking in the default search and use the
 first
 instance of the config file we find.
>>> 
>>> While that is conservative and safe, it would also require us to support
>>> the outdated directories forever and by extension make our code more
>>> complicated for that same period. So I'm not in favor of this strategy.
>>> 
>>> And I'm not the only one. I have come across several applications in my
>>> long use of linux that have chosen not to do that either. Two come to
>>> mind immediately: libreoffice has changed user data directories with
>>> every major release for as long as I have used it. It has always copied
>>> the old one and didn't even bother telling the user about this. KMail did
>>> a similar migration twice, and informed the me about it on each occasion.
>>> 
>>> So I think to point of view to take here is gnucash 2.8 is a new
>>> application that knows how to import settings from an older application
>>> (which happens to be gnucash 2.6 or older). At some point in the future
>>> nobody will still be using the old application at which point the user
>>> can decide to drop the configuration that old app used (I think nobody
>>> does that in real life though).
>>> 
>>> I agree an override option should exist indeed. Not in the least because
>>> you're using it on OS X :)
>>> 
>>> On the other hand I think GNC_DOT_DIR is tied way too much to the old
>>> directory format and I prefer to change it to GNC_DATA_HOME (as GNC_HOME
>>> is
>>> already in use to point at the base installation directory).
>>> 
 The XDG environment variables are appropriate in the Gnome and KDE
 desktop
 environments on Linux and pretty much nowhere else. Perhaps the best
 approach would be to set reasonable defaults per OS and allow them to be
 overridden with a CMake variable and configure argument.
>>> 
>>> The per OS defaults are a good suggestion. On linux and compatible that is
>>> XDG_DATA_HOME/Gnucash, on Windows CSIDL_APPDATA\Gnucash. I'm only missing
>>> this on OS X. Is there a function in the Quarz framework that would
>>> return ~/ Library/Application Support/ so a similar default path can be
>>> created ? I'd want the defaults to be such that no environment variable
>>> should be set to get them.
>>> 
>>> About the override in Cmake or configure, I doubt that makes much sense.
>>> These directories have no use during build, only at runtime*. And at
>>> runtime they can be overridden by GNC_DATA_HOME and AQBANKING_HOME.
>>> 
>>> Geert
>>> 
>>> * Strictly speaking I should say "should have no use during build".
>>> Unfortunately compiling the guile sources will cause the user_data_dir
>>> functions to be run. It's guile's way of evaluating whether dynamically
>>> loaded modules won't call other guile sources that need to be compiled :(
>>> I'm still evaluating whether this is bad for my new code or not.
>> 
>> Re backwards compat, OK, I guess. Moving the default for GnuCash isn't
>> really the issue, it's AQBanking. Unless we convince Martin to go along
>> we're either going to have a hack like linking or to support ~/.aqbanking
>> forever.
>> 
> For AQBanking we may have to consider this per platform. For OS X/Quarz and 
> Windows we bundle AQBanking. So on those platforms at least  we can consider 
> it private to gnucash and don't worry about other applications wanting to use 
> it. We'd even don't want that. So it's also reasonable to consider its 
> configuration private enough to gnucash to decide for our own where we want 
> to 
> store it.
> 
> On linux and several other package based platforms aqbanking is normally a 
> system library. So perhaps on those platforms we should leave things as they 
> are or keep a fallback. At some point I'll probably take it up with Martin/
> Christian as well to check whether they are interested in implementing the 
> XDG 
> specification on free desktop abiding platforms.
> 
> That's not in the 2.8 time frame though.
> 
>> Re GNC_DOT_DIR on Mac: But if GnuCash sets the default data directory to
>> ~/Library/Application Support then I won't need the environment variable
>> override.
>> 
> Indeed. I didn't mention that separately because my previous mail already had 
> too many words :)
> 
>> The reason for providing a CMake/configure override is because people build
>> GnuCash on platforms besides the 3 we overtly support including the various
>> BSDs, True64, and Solaris. There was even 

Re: Change aging.scm report intervals (0-30,31-60,...)

2017-08-25 Thread Derek Atkins
Hi,

Eric Wheeler  writes:

> Hello all,
>
> I'm trying to understand the aging.scm report and how it generates the 
> receivable aging.  Specifically, I would like to split the 31-60 range 
> into two ranges of 31-45 and 46-60.  Or, if simpler, just make the buckets 
> 15 days apart instead of 30 days apart.  
>
> We have notification policies around the 45-day mark and it would be great 
> to make this easier for our AR.
>
> Can someone point me in the right direction here?  Any help would be 
> greatly appreciated!

This is the code in aging.scm that sets it up:

(define (make-interval-list to-date)
  (let ((begindate to-date))
(set! begindate (decdate begindate ThirtyDayDelta))
(set! begindate (decdate begindate ThirtyDayDelta))
(set! begindate (decdate begindate ThirtyDayDelta))
(gnc:make-date-list begindate to-date ThirtyDayDelta)))

-derek
-- 
   Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
   Member, MIT Student Information Processing Board  (SIPB)
   URL: http://web.mit.edu/warlord/PP-ASEL-IA N1NWH
   warl...@mit.eduPGP key available
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel