Tracked files modified by compilation or configuration

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Tracked files modified by compilation or configuration

Dr Rainer Woitok
Greetings,

off and on I syncronize my local clone of the GPSBabel source repository
with "https://github.com/gpsbabel/gpsbabel.git" and then run

   make all gui

against it.   This time  "autoconf" and "configure"  were triggered this
way, and after  compilation of the  changed source files  and linking of
"gpsbabel.exe" and  "gpsbabelfe-bin.exe"  I ended up  with a  repository
containing uncomitted changes in the following files:

   gui/gpsbabelfe.ts
   gui/gpsbabelfe_de.ts
   gui/gpsbabelfe_es.ts
   gui/gpsbabelfe_fr.ts
   gui/gpsbabelfe_hu.ts
   gui/gpsbabelfe_it.ts
   gui/gpsbabelfe_ru.ts
   internal_styles.cc

This indicates  that these files are created  or modified by "autoconf",
"configure", or some makefile recipies  and thus should _NOT_ be version
controlled at all, except if it's your intention to prevent easy compil-
ing from the  GPSBabel source repository.   It's a bit anoying having to
manually work around this problem each time one updates one's local GPS-
Babel repository :-(

Can you do something about this, please? :-)

Sincerely,
  Rainer

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Robert Lipe-4
We version control ALL the files we distribute, which does include some that are generated. If you're going to be regularly working directly from the repository, you should have the tools to regenerate these or have a script that ensures that configure, internal_styles, xcsv_tokens.gperf, etc. have a later timestamp than everything else after you do a pull.

Our release process that creates the src tarball does exactly this for exactly those reasons. This allows someone to easily build from source without needing autoconf and such. If you're working directly from the tree instead of from releases, either be prepared to manage the timestamps or have the tools to regenerate these things.  The first is easier.

On Sun, Jul 10, 2016 at 8:46 AM, Dr Rainer Woitok <[hidden email]> wrote:
Greetings,

off and on I syncronize my local clone of the GPSBabel source repository
with "https://github.com/gpsbabel/gpsbabel.git" and then run

   make all gui

against it.   This time  "autoconf" and "configure"  were triggered this
way, and after  compilation of the  changed source files  and linking of
"gpsbabel.exe" and  "gpsbabelfe-bin.exe"  I ended up  with a  repository
containing uncomitted changes in the following files:

   gui/gpsbabelfe.ts
   gui/gpsbabelfe_de.ts
   gui/gpsbabelfe_es.ts
   gui/gpsbabelfe_fr.ts
   gui/gpsbabelfe_hu.ts
   gui/gpsbabelfe_it.ts
   gui/gpsbabelfe_ru.ts
   internal_styles.cc

This indicates  that these files are created  or modified by "autoconf",
"configure", or some makefile recipies  and thus should _NOT_ be version
controlled at all, except if it's your intention to prevent easy compil-
ing from the  GPSBabel source repository.   It's a bit anoying having to
manually work around this problem each time one updates one's local GPS-
Babel repository :-(

Can you do something about this, please? :-)

Sincerely,
  Rainer

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc


------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

tsteven4-2

For example see our regression script: https://github.com/gpsbabel/gpsbabel/blob/master/build_and_test


# the timestamps from a svn co are unpredicatble.

# this can cause problems if targets are checked into svn.

# some of our targets are part of the svn repository to allow a

# minimal set of build tools to be used.

# touch these targets to make sure they aren't considered out of date.

touch configure

touch xcsv_tokens.gperf

touch internal_styles.cc


On 7/10/2016 2:17 PM, Robert Lipe wrote:
We version control ALL the files we distribute, which does include some that are generated. If you're going to be regularly working directly from the repository, you should have the tools to regenerate these or have a script that ensures that configure, internal_styles, xcsv_tokens.gperf, etc. have a later timestamp than everything else after you do a pull.

Our release process that creates the src tarball does exactly this for exactly those reasons. This allows someone to easily build from source without needing autoconf and such. If you're working directly from the tree instead of from releases, either be prepared to manage the timestamps or have the tools to regenerate these things.  The first is easier.

On Sun, Jul 10, 2016 at 8:46 AM, Dr Rainer Woitok <[hidden email]> wrote:
Greetings,

off and on I syncronize my local clone of the GPSBabel source repository
with "https://github.com/gpsbabel/gpsbabel.git" and then run

   make all gui

against it.   This time  "autoconf" and "configure"  were triggered this
way, and after  compilation of the  changed source files  and linking of
"gpsbabel.exe" and  "gpsbabelfe-bin.exe"  I ended up  with a  repository
containing uncomitted changes in the following files:

   gui/gpsbabelfe.ts
   gui/gpsbabelfe_de.ts
   gui/gpsbabelfe_es.ts
   gui/gpsbabelfe_fr.ts
   gui/gpsbabelfe_hu.ts
   gui/gpsbabelfe_it.ts
   gui/gpsbabelfe_ru.ts
   internal_styles.cc

This indicates  that these files are created  or modified by "autoconf",
"configure", or some makefile recipies  and thus should _NOT_ be version
controlled at all, except if it's your intention to prevent easy compil-
ing from the  GPSBabel source repository.   It's a bit anoying having to
manually work around this problem each time one updates one's local GPS-
Babel repository :-(

Can you do something about this, please? :-)

Sincerely,
  Rainer

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc



------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape


_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc


------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Dr Rainer Woitok
In reply to this post by Robert Lipe-4
Robert,

On Sunday, 2016-07-10 15:17:12 -0500, you wrote:

> We version control ALL the files we distribute, which does include some
> that are generated.

I dare say "not true":

   $ grep exe .gitignore
   /gpsbabel.exe
   $

At least I hope "gpsbabel.exe" is part of your distributions.  But it is
not part of the repository for obvious reasons.   And for the same obvi-
ous reasons other files  generated in the  configuration  or compilation
process should not be part of the repository, even though they of course
have to be part of any distribution.


>                     If you're going to be regularly working directly from
> the repository, you should have the tools to regenerate these or have a
> script that ensures that configure, internal_styles, xcsv_tokens.gperf,
> etc. have a later timestamp than everything else after you do a pull.

What is the purpose of having a rule like

   internal_styles.cc: mkstyle.sh $(srcdir)/style/*.style
           $(srcdir)/mkstyle.sh > internal_styles.cc || ...

in file "Makefile" when you explicitly ask me  to use "touch" to prevent
"internal_styles.cc" from being updated?  This way I'm compiling with an
outdated and possibly inconsistent file "internal_styles.cc" and the re-
sults are  rather unpredictable  (by the way,  the first prerequisite in
the above rule should probably read "$(srcdir)/mkstyle.sh").

Script "mkstyle.sh" really _CHANGED_ "internal_styles.cc" (as opposed to
just creating a new but identical file):

   $ hg diff -c . internal_styles.cc
   diff --git a/internal_styles.cc b/internal_styles.cc
   --- a/internal_styles.cc
   +++ b/internal_styles.cc
   @@ -748,7 +748,7 @@
      "# FILE LAYOUT DEFINITIONS:\n"
      "#\n"
      "FIELD_DELIMITER             PIPE\n"
   -  "RECORD_DELIMITER    NEWLINE\n"
   +  "RECORD_DELIMITER    NEWLINE\n"
      "BADCHARS            \"|\n"
      "ENCODING            UTF-16LE\n"
      "#\n"
   @@ -1489,7 +1489,7 @@
      "IFIELD      IGNORE, \"\", \"%-.31s\"\n"
      "IFIELD      DESCRIPTION, \"\", \"%-.78s\"\n"
      ;
   -style_vecs_t style_list[] = {{ "xmapwpt", xmapwpt } , { "xmap2006", xmap2006 } , { "xmap", xmap } , { "tomtom_itn_places", tomtom_itn_places } , { "tomtom_itn", tomtom_itn } , { "tomtom_asc", tomtom_asc } , { "tabsep", tabsep } , { "saplus", saplus } , { "s_and_t", s_and_t } , { "ricoh", ricoh } , { "openoffice", openoffice } , { "nima", nima } , { "navigonwpt", navigonwpt } , { "mxf", mxf } , { "motoactv", motoactv } , { "mapconverter", mapconverter } , { "mainnav", mainnav } , { "land_air_sea", land_air_sea } , { "kompass_wp", kompass_wp } , { "kompass_tk", kompass_tk } , { "igo2008_poi", igo2008_poi } , { "igoprimo_poi", igoprimo_poi } , { "iblue757", iblue757 } , { "iblue747", iblue747 } , { "gpsman", gpsman } , { "gpsdrivetrack", gpsdrivetrack } , { "gpsdrive", gpsdrive } , { "geonet", geonet } , { "garmin_poi", garmin_poi } , { "garmin_g1000", garmin_g1000 } , { "garmin301", garmin301 } , { "fugawi", fugawi } , { "flysight", flysight } , { "dna", dna } , { "custom", custom } , { "cup", cup } , { "csv", csv } , { "cambridge", cambridge } , { "arc", arc } ,  {0,0}};
   +style_vecs_t style_list[] = {{ "xmapwpt", xmapwpt } , { "xmap2006", xmap2006 } , { "xmap", xmap } , { "tomtom_itn_places", tomtom_itn_places } , { "tomtom_itn", tomtom_itn } , { "tomtom_asc", tomtom_asc } , { "tabsep", tabsep } , { "saplus", saplus } , { "s_and_t", s_and_t } , { "ricoh", ricoh } , { "openoffice", openoffice } , { "nima", nima } , { "navigonwpt", navigonwpt } , { "mxf", mxf } , { "motoactv", motoactv } , { "mapconverter", mapconverter } , { "mainnav", mainnav } , { "land_air_sea", land_air_sea } , { "kompass_wp", kompass_wp } , { "kompass_tk", kompass_tk } , { "igoprimo_poi", igoprimo_poi } , { "igo2008_poi", igo2008_poi } , { "iblue757", iblue757 } , { "iblue747", iblue747 } , { "gpsman", gpsman } , { "gpsdrivetrack", gpsdrivetrack } , { "gpsdrive", gpsdrive } , { "geonet", geonet } , { "garmin_poi", garmin_poi } , { "garmin_g1000", garmin_g1000 } , { "garmin301", garmin301 } , { "fugawi", fugawi } , { "flysight", flysight } , { "dna", dna } , { "custom", custom } , { "cup", cup } , { "csv", csv } , { "cambridge", cambridge } , { "arc", arc } ,  {0,0}};
    size_t nstyles = 39;
    #else /* CSVFMTS_ENABLED */
    style_vecs_t style_list[] = {{0,0}};

The first change  refers to a  run of  blanks being replaced  with a tab
character, and the second change  refers to at least replacing "igo2008"
with "igoprimo".

Here "---"  refers to the state  of the repository  before calling "make
all gui", and "+++" refers to the state after that.  More precisely, the
Git revision id referred to by "---" should be "a187be693531e73cb110447-
805e76043bcdf6e87"  featuring the  commit message  "2016-05-07  15:48:40
-0500 [hidden email]: Grammar tweak after killing Qt4.".

So again: by telling me to just touch  "internal_styles.cc" to pevent it
from being remade, you are in fact telling  me to create an outdated (at
the least) or inconsistent  (in the worst case) "gpsbabel.exe".  This is
not what doing one's own compilations is about.

> Our release process that creates the src tarball does exactly this for
> exactly those reasons. This allows someone to easily build from source
> without needing autoconf and such.

What's in a tarball  is quite a different story  from what's in a public
source repository.

>                                    If you're working directly from the tree
> instead of from releases, either be prepared to manage the timestamps or
> have the tools to regenerate these things.  The first is easier.

As the example above is showing  "managing the timestamps" just leads to
old stuff in the compiled code.

Sincerely,
  Rainer
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Greg Troxel

Dr Rainer Woitok <[hidden email]> writes:

> Robert,
>
> On Sunday, 2016-07-10 15:17:12 -0500, you wrote:
>
>> We version control ALL the files we distribute, which does include some
>> that are generated.
>
> I dare say "not true":
>
>    $ grep exe .gitignore
>    /gpsbabel.exe
>    $
>
> At least I hope "gpsbabel.exe" is part of your distributions.  But it is
> not part of the repository for obvious reasons.   And for the same obvi-
> ous reasons other files  generated in the  configuration  or compilation
> process should not be part of the repository, even though they of course
> have to be part of any distribution.
I really hope OS-specific files are not part of the source distribution.....


FWIW, I'm in the "don't put generated files in a VCS" camp.   That's
what "make dist" in automake is for.

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc

signature.asc (186 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Robert Lipe-4
FWIW, I'm in the "don't put generated files in a VCS" camp.   That's
what "make dist" in automake is for.

Doing so would require Windows users, for example, to install gperf and bash and sed and perl and coreutils and such.

If you're on a Unix-like substance, these are pretty much a given. On Windows, in particular, tracking these down only so you can exactly reproduce our infrequently changing xcsv_tokens.gperf seems like sending them on a busywork exercise.

Should we quit trying to accommodate the  "I just want to install Qt Creator or MSVC" users and basically require them to install Cygwin or that Windows 10 Ubuntu thingy and run quirky commands before starting the IDE just so devs working from the source tree don't have to manage timestamps after an update? If we don't check these in, the barrier to a Creator or MSVC user is high enough that we'll exclude all but the most die-hard Windows devs as "download and start the build" becomes "find and install a bunch of nuisance tools and run a bunch of commands and then start the build".  In practice, internal_styles and xcsv_tokens and such are almost never something a casual dev - that just want's to add a format or tweak an existing one - wants to change.

When you have these tools as part of your OS, it's easy to forget how difficult they are for others.  "Just plug it in and let it sync via 4G" my be easy for you and me, but in a country where electricity isn't reliable and 2G is barely a thing, it's harder.

Yes, I really did just compare developing on Windows to living in a developing country just because these discussions always seem to involve some name-calling. :-)

RJL

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Greg Troxel

If you're really getting patches from people on Windows who wouldn't be
able to cope, then I can see the point.


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc

signature.asc (186 bytes) Download Attachment
SRE
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

SRE
In reply to this post by Robert Lipe-4
At 08:41 AM 7/14/2016, you wrote:
>Should we quit trying to accommodate the  "I just want to install Qt
>Creator or MSVC" users and basically require them to install Cygwin or
>that Windows 10 Ubuntu thingy and run quirky commands

Do you have anyone building on Windows? I got it to run once, then
lost the recipe after mandatory updates and have been unable to
build ever since. Even when I could build, I couldn't build the
GUI version.

If anyone reading this is building on Win7 or Win10, please let me
know how! (there's some stuff I'd like to do)

Steve


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc
Reply | Threaded
Open this post in threaded view
|

Re: Tracked files modified by compilation or configuration

Dr Rainer Woitok
In reply to this post by Robert Lipe-4
Robert,

On Thursday, 2016-07-14 10:41:05 -0500, you wrote:

> >
> > FWIW, I'm in the "don't put generated files in a VCS" camp.   That's
> > what "make dist" in automake is for.
>
> Doing so would require Windows users, for example, to install gperf and
> bash and sed and perl and coreutils and such.

I'm still under the impression that we are discussing different topics:

#1: There are DISTRIBUTIONS.  These are tarballs, zip archives, or what-
    ever.  They represent a particular version of a software product and
    contain all files necessary for a particular purpose, be it install-
    ing a binary or compiling it  from source files.   If a freshly gen-
    erated  "internal_styles.cc" would  make your  customers  happy, you
    should by all means include it in the distribution.

#2: There are version controlled source code REPOSITORIES.  These repre-
    sent ALL VERSIONS of a software product and even developement states
    between two official produnct versions.  They are used by people be-
    ing in need of the most recent changes or fixes, by people interest-
    ed in some particular older version, or even by people interested in
    modifying the existing source code so the product serves their part-
    icular needs.

You are always talking about the needs of people in category #1, while I
am always talking  of people in category #2.   For people in  the former
category it's a  must to have file "internal_styles.cc"  in the distrib-
ution.  So just include it there.   As Greg has already pointed out this
is simply a matter of defining an appropriate "dist" target in the make-
file.  However, a version controlled file which is at the same time gen-
erated by a recipie  in the makefile  always leaves people from category
#2 with a modified repository they somehow have to deal with.   There is
no clean solution for a downstream repository when the upstream reposit-
ory contains  generated files which  are version controlled  at the same
time.

So why not satisfy  both types  of customers?   Put everything into your
DISTRIBUTIONS needed by the  people these distributions are targeted at,
and at the same time do not version control files in the source REPOSIT-
ORY which are created during the configuration or compilation process.

> ...
> Should we quit trying to accommodate the  "I just want to install Qt
> Creator or MSVC" users and basically require them to install Cygwin or that
> Windows 10 Ubuntu thingy and run quirky commands before starting the IDE
> just so devs working from the source tree don't have to manage timestamps
> after an update?

Are these type #1 or type #2 customers?   In any case,  you surely don't
accommodate the type #2 customers.

>                  If we don't check these in, the barrier to a Creator or
> MSVC user is high enough that we'll exclude all but the most die-hard
> Windows devs as "download and start the build" becomes "find and install a

"Download and start the build" very much sounds  like the type #1 categ-
ory, that is, it sounds like downloading  a distribution as a tarball or
zip archive.   But as demonstrated above,  the question  of what is con-
tained in this distribution  is quite independent  from the  question of
whether or not  files generated  in the build process  should be version
controlled in the source repository.

Sincerely,
  Rainer

PS: You didn't yet tell me  whether the "gpsbabel.exe" compiled with the
    "touch"-ed version of "internal_styles.cc"  or that with the freshly
    generated one is the correct "gpsbabel.exe".

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
[hidden email]
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc