The new gnome-common/macros solution



Hello,

I had a look at this problem that the `macros/' directory
currently needs to be distributed which each module and I
found a solution for this.

Basically, gnome-common is now a "normal" module which you
need to compile and install - this will install all the
macros and a gnome-autogen.sh script.

Detailed instructions can be found in gnome-common/doc/usage.txt:

====[gnome-common/doc/usage.txt]====
This module is intended especially for people who want to
develop GNOME Applications outside of the GNOME CVS tree
(of cause, it also works if you develop inside of GNOME CVS).

The idea is to install everything from the `macros/' and
to provide a gnome-autogen.sh script which is similar to
the one from the macros dir.

Basically all we need to do is to make sure that the macros
in the `macros/' dir work with all versions of their package
(I mean, foo.m4 needs to work with all versions of foo).

We only need to re-release gnome-common when any of the
macros have changed which doesn't happen too often.

So, here's what you have to do to use it:

1.) You need to compile and install gnome-common like any
    normal package.

2.) You don't need to have a `macros/' dir in your package,
    this stuff is going to replace it.

3.) In your autogen.sh use this:

    ---
    . `gnome-config --bindir`/gnome-autogen.sh
    ---

    instead of

    ---
    . macros/autogen.sh
    ---

4.) In you configure.in, remove the

    ---
    AM_ACLOCAL_INCLUDE(macros)
    ---

    and replace it with

    ---
    GNOME_COMMON_INIT
    ---

That's it. Now your app uses the macros which are installed
from gnome-common.

[This is only intended for "hackers":

 If you want to use GNOME 2.0, you can use

 ---
 USE_GNOME_2_MACROS=1 . `gnome-config --bindir`/gnome-autogen.sh
 ---

 in your autogen.sh to get rid of the `hack-macros/' dir.
]

Comments, Questions, etc. are welcome :)


May 29, 2000
Martin Baulig <martin@suse.de>
====

-- 
Martin Baulig
martin@gnome.org (private)
baulig@suse.de (work)




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