script for win32

Derek Atkins warlord at MIT.EDU
Mon Aug 28 10:04:40 EDT 2006

Christian Stimming <stimming at> writes:

> Actually I think it's just a matter of changing g-wrap.scm line 981 from
>         "                (dynamic-link \"lib" wrapset-name "\"))))\n"))))))
> into
>         "                (dynamic-link \"lib" wrapset-name "-0\"))))\n"))))))

Ahh, so think you could modify to apply this change?

> Oh, sure, I'm all for doing this all the time. I just thought some people 
> might have preferred to keep it the way it is. Surely it's better to use the 
> same code for both. So let's change the Makefiles to achieve this.

Good rationale, but I think it's better to just always do it the
same way.  So, yes, let's...  :)

> Oh, right -- the last part makes everything work. So the generated files are 
> LN_S'd right in the same rule that creates them. This will work everywhere, 
> methinks.

Yeah, I think so too.

> Except that [ -d gnucash ] will also succeed with the current
> symlink to pwd, because the directory that the symlink is pointing
> to is a directory. So I'd

Oh.. Foo... You're right.

> rather propose to stick to rm -rf and mkdir -p, which will also
> avoid any problems for the other developers when updating their
> current SVN build tree.  See attached new patch, again for
> src/gnc-module (although src/core-utils is actually the first
> concerned directory in the build.)

Sure.  That works..

> If this or something similar looks good to you, you can commit right away. 
> Eventually this concerns 26 different's, but we can start with 
> the first concerned directories from the build: core-utils, gnc-module, 
> engine. This will already give us enough tests for "make check" as well.

I see a few issues with this, but yeah, something similar would work..

> Christian
> +.scm-links:
> +	$(RM) -rf gnucash g-wrapped
> +	mkdir -p  gnucash g-wrapped
> +	( cd gnucash; for A in $(gncmod_DATA) ; do $(LN_S) -f ../$$A . ; done )
>  	touch .scm-links

This part looks good.

> +clean-local:
> +	$(RM) -rf gnucash g-wrapped

I think you want to add ".scm-links" to this part...

> +
>  gw-gnc-module.scm gw-gnc-module.c gw-gnc-module.h: \
>    .scm-links gw-gnc-module-spec.scm ${top_builddir}/config.status
>  	FLAVOR=gnome $(GUILE) -c \
>  	  "(set! %load-path (cons \"${G_WRAP_MODULE_DIR}\" %load-path)) \
>  	  (primitive-load \"./gw-gnc-module-spec.scm\") \
>  	  (gw:generate-wrapset \"gw-gnc-module\")"
> +	( cd g-wrapped; $(LN_S) ../gw-*.scm . )
>  BUILT_SOURCES = gw-gnc-module.scm gw-gnc-module.h gw-gnc-module.c
>  CLEANFILES = $(BUILT_SOURCES) .scm-links g-wrapped gnucash \

... and remove .scm-links, g-wrapped, and gnucash from the CLEANFILES

Also, we might want to use the .INTERMEDIATE rule as suggested by
Mike.  But yeah, this looks like a good approach!


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list