Re: [sane-devel] Moving certain backends to separate directories

2019-08-17 Thread Olaf Meeuwissen
Hi Louis,

Louis Lagendijk writes:

> hi Olaf, Povilas
> On Tue, 2019-08-13 at 19:34 +0300, Povilas Kanapickas wrote:
>> Hi Olaf,
>>
>> On 8/12/19 3:36 PM, Olaf Meeuwissen wrote:
>> > Hi Povilas,
>> >
>> > Povilas Kanapickas writes:
>> >
>> > > Hi,
>> > >
>> > > The genesys backend on the current master comprises of 42 files.  I
>> > > propose to move it under `backend/genesys`? The same could eventually be
>> > > done to other larger backends (or maybe even all backends) as the
>> > > `backend` directory is becoming hard to navigate.
>> >
>> > I agree that for backends that consist of more than a "handful" of files
>> > it may be convenient/desirable to move them into a directory of their
>> > own below backend/.  If doing so, we would need a naming convention and
>> > what you suggest, using the backend's name as the directory name, makes
>> > sense and works fine.
>>
>> It's great that we agree.
>>
>> > Moving things to a dedicated backend/$BACKEND_NAME directory also makes
>> > it slightly more convenient to limit searches and may make recompiling a
>> > bit more performant (depending on how you integrate the build bits).
>> >
>> > One question though, what are you're thoughts on the automake end of
>> > this approach?  There are a couple of options here:
>> >
>> >  - add a SUBDIRS variable to backend/Makefile.am and write a dedicated
>> >Makefile.am for your backend.  This approach will not be able to
>> >benefit from any common settings in backend/Makefile.am but keeps it
>> >content focussed on the backend at hand.
>> >
>> >  - just insert the directory name everywhere in backend/Makefile.am for
>> >files related to your backend.  This simply makes that file a tad
>> >more verbose.  You'd still be able to benefit from common settings
>> >but backend/Makefile.am would still have to cater to all backends.
>> >
>> >  - extract the backend/Makefile.am bits for your backend into a snippet
>> >for inclusion in backend/Makefile.am.  The snippet could either live
>> >in backend/ or in backend/$BACKEND_NAME.  In both cases I would call
>> >it $BACKEND_NAME.am and in both cases it would have to include the
>> >$BACKEND_NAME directory in file names.  This approach would be able
>> >to benefit from common settings in backend/Makefile.am and keep focus
>> >on the backend at hand nevertheless.
>>
>> I think that for the beginning it could probably make sense just to edit
>> backend/Makefile.am and insert the directory name there. We could
>> explore more complex options later.

> For the backend developers option 1 (SUBDIRS) is easier as it allows
> one to cd into the backend directory and call make on that directory
> only (if I understand it correctly). But this will be a fair amount of
> work. For now just editing backend/Makefile.am will do.

Yes, you understand correctly and that's what I had more or less in mind
when I wrote "may make recompiling a bit more performant (depending on
how you integrate the build bits)".

As for reusing common bits, putting the include logic upside down, one
could prepare a backend/common-bits.am and include that file from one's
backend/$BACKEND_NAME/Makefile.am.  Actually, one might even want to
make it a collections of *defaults* that can be overridden by the
including Makefile.am.

And come to think of it, all three approaches can be mixed so each
backend can choose whatever suits its developer(s) best.  That might get
a tad confusing though.

Anyway, let's keep things simple at first and see how the second
approach works out for the genesys backend.

Hope this helps,
--
Olaf Meeuwissen, LPIC-2FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Softwarehttps://my.fsf.org/donate
 Join the Free Software Foundation  https://my.fsf.org/join

-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org

Re: [sane-devel] Moving certain backends to separate directories

2019-08-17 Thread Olaf Meeuwissen
Hi Povilas,

Povilas Kanapickas writes:

> Hi Olaf,
>
> On 8/12/19 3:36 PM, Olaf Meeuwissen wrote:
>> Hi Povilas,
>>
>> Povilas Kanapickas writes:
>>
>>> Hi,
>>>
>>> The genesys backend on the current master comprises of 42 files. I
>>> propose to move it under `backend/genesys`? The same could eventually be
>>> done to other larger backends (or maybe even all backends) as the
>>> `backend` directory is becoming hard to navigate.
>>
>> I agree that for backends that consist of more than a "handful" of files
>> it may be convenient/desirable to move them into a directory of their
>> own below backend/.  If doing so, we would need a naming convention and
>> what you suggest, using the backend's name as the directory name, makes
>> sense and works fine.
>
> It's great that we agree.
>
>> Moving things to a dedicated backend/$BACKEND_NAME directory also makes
>> it slightly more convenient to limit searches and may make recompiling a
>> bit more performant (depending on how you integrate the build bits).
>>
>> One question though, what are you're thoughts on the automake end of
>> this approach?  There are a couple of options here:
>>
>>  - add a SUBDIRS variable to backend/Makefile.am and write a dedicated
>>Makefile.am for your backend.  This approach will not be able to
>>benefit from any common settings in backend/Makefile.am but keeps it
>>content focussed on the backend at hand.
>>
>>  - just insert the directory name everywhere in backend/Makefile.am for
>>files related to your backend.  This simply makes that file a tad
>>more verbose.  You'd still be able to benefit from common settings
>>but backend/Makefile.am would still have to cater to all backends.
>>
>>  - extract the backend/Makefile.am bits for your backend into a snippet
>>for inclusion in backend/Makefile.am.  The snippet could either live
>>in backend/ or in backend/$BACKEND_NAME.  In both cases I would call
>>it $BACKEND_NAME.am and in both cases it would have to include the
>>$BACKEND_NAME directory in file names.  This approach would be able
>>to benefit from common settings in backend/Makefile.am and keep focus
>>on the backend at hand nevertheless.
>
> I think that for the beginning it could probably make sense just to edit
> backend/Makefile.am and insert the directory name there. We could
> explore more complex options later.

That sounds okay.  If we want to explore my last suggestion, you'd have
to add the directory names anyway.

Hope this helps,
--
Olaf Meeuwissen, LPIC-2FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Softwarehttps://my.fsf.org/donate
 Join the Free Software Foundation  https://my.fsf.org/join

-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org

Re: [sane-devel] Moving certain backends to separate directories

2019-08-15 Thread Louis Lagendijk
hi Olaf, Povilas
On Tue, 2019-08-13 at 19:34 +0300, Povilas Kanapickas wrote:
> Hi Olaf,
> 
> On 8/12/19 3:36 PM, Olaf Meeuwissen wrote:
> > Hi Povilas,
> > 
> > Povilas Kanapickas writes:
> > 
> > > Hi,
> > > 
> > > The genesys backend on the current master comprises of 42 files.
> > > I
> > > propose to move it under `backend/genesys`? The same could
> > > eventually be
> > > done to other larger backends (or maybe even all backends) as the
> > > `backend` directory is becoming hard to navigate.
> > 
> > I agree that for backends that consist of more than a "handful" of
> > files
> > it may be convenient/desirable to move them into a directory of
> > their
> > own below backend/.  If doing so, we would need a naming convention
> > and
> > what you suggest, using the backend's name as the directory name,
> > makes
> > sense and works fine.
> 
> It's great that we agree.
> 
> > Moving things to a dedicated backend/$BACKEND_NAME directory also
> > makes
> > it slightly more convenient to limit searches and may make
> > recompiling a
> > bit more performant (depending on how you integrate the build
> > bits).
> > 
> > One question though, what are you're thoughts on the automake end
> > of
> > this approach?  There are a couple of options here:
> > 
> >  - add a SUBDIRS variable to backend/Makefile.am and write a
> > dedicated
> >Makefile.am for your backend.  This approach will not be able to
> >benefit from any common settings in backend/Makefile.am but
> > keeps it
> >content focussed on the backend at hand.
> > 
> >  - just insert the directory name everywhere in backend/Makefile.am
> > for
> >files related to your backend.  This simply makes that file a
> > tad
> >more verbose.  You'd still be able to benefit from common
> > settings
> >but backend/Makefile.am would still have to cater to all
> > backends.
> > 
> >  - extract the backend/Makefile.am bits for your backend into a
> > snippet
> >for inclusion in backend/Makefile.am.  The snippet could either
> > live
> >in backend/ or in backend/$BACKEND_NAME.  In both cases I would
> > call
> >it $BACKEND_NAME.am and in both cases it would have to include
> > the
> >$BACKEND_NAME directory in file names.  This approach would be
> > able
> >to benefit from common settings in backend/Makefile.am and keep
> > focus
> >on the backend at hand nevertheless.
> 
> I think that for the beginning it could probably make sense just to
> edit
> backend/Makefile.am and insert the directory name there. We could
> explore more complex options later.
> 
> Regards,
> Povilas
For the backend developers option 1 (SUBDIRS) is easier as it allows
one to cd into the backend directory and call make on that directory
only (if I understand it correctly). But this will be a fair amount of
work. For now just editing backend/Makefile.am will do.

Regards, louis



-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org

Re: [sane-devel] Moving certain backends to separate directories

2019-08-13 Thread Povilas Kanapickas
Hi Olaf,

On 8/12/19 3:36 PM, Olaf Meeuwissen wrote:
> Hi Povilas,
> 
> Povilas Kanapickas writes:
> 
>> Hi,
>>
>> The genesys backend on the current master comprises of 42 files. I
>> propose to move it under `backend/genesys`? The same could eventually be
>> done to other larger backends (or maybe even all backends) as the
>> `backend` directory is becoming hard to navigate.
> 
> I agree that for backends that consist of more than a "handful" of files
> it may be convenient/desirable to move them into a directory of their
> own below backend/.  If doing so, we would need a naming convention and
> what you suggest, using the backend's name as the directory name, makes
> sense and works fine.

It's great that we agree.

> Moving things to a dedicated backend/$BACKEND_NAME directory also makes
> it slightly more convenient to limit searches and may make recompiling a
> bit more performant (depending on how you integrate the build bits).
> 
> One question though, what are you're thoughts on the automake end of
> this approach?  There are a couple of options here:
> 
>  - add a SUBDIRS variable to backend/Makefile.am and write a dedicated
>Makefile.am for your backend.  This approach will not be able to
>benefit from any common settings in backend/Makefile.am but keeps it
>content focussed on the backend at hand.
> 
>  - just insert the directory name everywhere in backend/Makefile.am for
>files related to your backend.  This simply makes that file a tad
>more verbose.  You'd still be able to benefit from common settings
>but backend/Makefile.am would still have to cater to all backends.
> 
>  - extract the backend/Makefile.am bits for your backend into a snippet
>for inclusion in backend/Makefile.am.  The snippet could either live
>in backend/ or in backend/$BACKEND_NAME.  In both cases I would call
>it $BACKEND_NAME.am and in both cases it would have to include the
>$BACKEND_NAME directory in file names.  This approach would be able
>to benefit from common settings in backend/Makefile.am and keep focus
>on the backend at hand nevertheless.

I think that for the beginning it could probably make sense just to edit
backend/Makefile.am and insert the directory name there. We could
explore more complex options later.

Regards,
Povilas



-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org

Re: [sane-devel] Moving certain backends to separate directories

2019-08-12 Thread Olaf Meeuwissen
Hi Povilas,

Povilas Kanapickas writes:

> Hi,
>
> The genesys backend on the current master comprises of 42 files. I
> propose to move it under `backend/genesys`? The same could eventually be
> done to other larger backends (or maybe even all backends) as the
> `backend` directory is becoming hard to navigate.

I agree that for backends that consist of more than a "handful" of files
it may be convenient/desirable to move them into a directory of their
own below backend/.  If doing so, we would need a naming convention and
what you suggest, using the backend's name as the directory name, makes
sense and works fine.

Moving things to a dedicated backend/$BACKEND_NAME directory also makes
it slightly more convenient to limit searches and may make recompiling a
bit more performant (depending on how you integrate the build bits).

One question though, what are you're thoughts on the automake end of
this approach?  There are a couple of options here:

 - add a SUBDIRS variable to backend/Makefile.am and write a dedicated
   Makefile.am for your backend.  This approach will not be able to
   benefit from any common settings in backend/Makefile.am but keeps it
   content focussed on the backend at hand.

 - just insert the directory name everywhere in backend/Makefile.am for
   files related to your backend.  This simply makes that file a tad
   more verbose.  You'd still be able to benefit from common settings
   but backend/Makefile.am would still have to cater to all backends.

 - extract the backend/Makefile.am bits for your backend into a snippet
   for inclusion in backend/Makefile.am.  The snippet could either live
   in backend/ or in backend/$BACKEND_NAME.  In both cases I would call
   it $BACKEND_NAME.am and in both cases it would have to include the
   $BACKEND_NAME directory in file names.  This approach would be able
   to benefit from common settings in backend/Makefile.am and keep focus
   on the backend at hand nevertheless.

Hope this helps,
--
Olaf Meeuwissen, LPIC-2FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Softwarehttps://my.fsf.org/donate
 Join the Free Software Foundation  https://my.fsf.org/join

-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org

Re: [sane-devel] Moving certain backends to separate directories

2019-08-10 Thread littlesincanada

Hi,

On 2019-08-10 9:56 a.m., Povilas Kanapickas wrote:

The genesys backend on the current master comprises of 42 files. I
propose to move it under `backend/genesys`? The same could eventually be
done to other larger backends (or maybe even all backends) as the
`backend` directory is becoming hard to navigate.


I think that is a great idea.
This would be good for the pixma backend which has a number of files also.
It would certainly improve the clarity of structure.

Cheers,
Ralph

--
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
to sane-devel-requ...@lists.alioth.debian.org

[sane-devel] Moving certain backends to separate directories

2019-08-10 Thread Povilas Kanapickas
Hi,

The genesys backend on the current master comprises of 42 files. I
propose to move it under `backend/genesys`? The same could eventually be
done to other larger backends (or maybe even all backends) as the
`backend` directory is becoming hard to navigate.

Regards,
Povilas


-- 
sane-devel mailing list: sane-devel@alioth-lists.debian.net
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/sane-devel
Unsubscribe: Send mail with subject "unsubscribe your_password"
 to sane-devel-requ...@lists.alioth.debian.org