debian/0000755000000000000000000000000012170314270007163 5ustar debian/libgarmin0.install0000644000000000000000000000002211204340754012574 0ustar usr/lib/lib*.so.* debian/control0000644000000000000000000000177612170312054010577 0ustar Source: libgarmin Priority: extra Maintainer: Gilles Filippini Build-Depends: debhelper (>= 7.0.50~), automake, libtool Standards-Version: 3.9.2 Section: libs Homepage: http://libgarmin.sourceforge.net/ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libgarmin.git;a=summary Vcs-Git: git://anonscm.debian.org/collab-maint/libgarmin.git Package: libgarmin-dev Section: libdevel Architecture: any Depends: libgarmin0 (= ${binary:Version}), ${misc:Depends} Conflicts: garmin-forerunner-tools (<< 0.10-1) Description: Garmin image format library (development files) libgarmin is a library to parse Garmin IMG files as used by the Garmin GPS devices. . This package includes development support files. Package: libgarmin0 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Garmin image format library (runtime version) libgarmin is a library to parse Garmin IMG files as used by the Garmin GPS devices. . This package contains the run-time shared library only. debian/README.source0000644000000000000000000000350511547663430011361 0ustar This file is used to keep track of packaging choices, known issues and TO-DOs. ================================================== 1- HOW THE SOURCE PACKAGE IS HANDLED USING SVN/GIT ================================================== The work on this package takes place on the alioth git repository. It requires an alioth account with grant to the collab-maint group. Cloning the repository: $ git clone @alioth.debian.org:/git/collab-maint/libgarmin.git The repository has 3 remote branches: * origin/upstream-svn * origin/upstream * origin/master HEAD is binded to master. master fetched localy by the clone: $ git branch * master A daily cronjob syncs origin/upstream-svn with upstream's SVN repository (). A packaging cycle starts by merging origin/upstream-svn with upstream. It requires having checked out origin/upstream localy (need to be done once): $ git checkout -b upstream origin/upstream Then we can do the merge: $ git merge origin/upstream-svn It can leads to conflicts when parts of pristine upstream tree have been removed in our upstream branch. As of today no part of pristine upstream has been removed. When the merge is completed and committed we then switch to the master branch to merge upstream: $ git checkout master $ git merge upstream Then we can work on the packaging, still in the master branch. See below how to patch upstream source code. The package is built using git-buildpackage. See To build using cowbuilder consider using git-pbuilder $ DIST=sid git-buildpackage --git-builder=/usr/bin/git-pbuilder Warning: when modifying upstream branch (such as removing parts) you'll need to rm .orig.tar.gz before building the package again. debian/patches/0000755000000000000000000000000012170310001010576 5ustar debian/patches/libtoolize0000644000000000000000000000420012170307313012705 0ustar Use libtool to have both shared and static lib. diff --git a/Makefile.inc b/Makefile.inc index 3178d7c..cc6f09a 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -1,7 +1,7 @@ pkgdocdir=$(pkgdatadir)/doc AM_CPPFLAGS = if !TARGET_WIN32CE -CFLAGS += -shared +#CFLAGS += -shared AM_CPPFLAGS += -fPIC endif if DEBUG diff --git a/autosh.sh b/autosh.sh index fb522d6..216459e 100755 --- a/autosh.sh +++ b/autosh.sh @@ -1,2 +1,2 @@ #! /bin/bash -aclocal && autoheader && automake --add-missing && autoreconf && ./configure +autoreconf --force --install diff --git a/configure.ac b/configure.ac index af94cad..c0eb11c 100644 --- a/configure.ac +++ b/configure.ac @@ -12,7 +12,14 @@ if eval "test x$GCC = xyes"; then CFLAGS="$CFLAGS -Wall -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type" fi -AC_PROG_RANLIB +AC_PROG_LIBTOOL +LT_LIBGARMIN_CURRENT=0 +LT_LIBGARMIN_REVISION=0 +LT_LIBGARMIN_AGE=0 +AC_SUBST(LT_LIBGARMIN_CURRENT) +AC_SUBST(LT_LIBGARMIN_REVISION) +AC_SUBST(LT_LIBGARMIN_AGE) + # Checks for libraries. # FIXME: Replace `main' with a function in `-lgarmin': #AC_CHECK_LIB([garmin], [main]) diff --git a/src/Makefile.am b/src/Makefile.am index e8ae308..27ffdc9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -2,9 +2,12 @@ include $(top_srcdir)/Makefile.inc AM_CPPFLAGS += -DDATAPREFIX=\"@datarootdir@\" -lib_LIBRARIES = libgarmin.a +lib_LTLIBRARIES = libgarmin.la -libgarmin_a_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \ +libgarmin_la_LDFLAGS = -version-info \ + @LT_LIBGARMIN_CURRENT@:@LT_LIBGARMIN_REVISION@:@LT_LIBGARMIN_AGE@ + +libgarmin_la_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \ bsp.c garmin_fat.h garmin_subdiv.c libgarmin_priv.h \ bsp.h garmin_lbl.c garmin_subdiv.h \ garmin_lbl.h garmin_typ.c list.c \ @@ -18,9 +21,9 @@ libgarmin_a_SOURCES = GarminTypedef.h garmin_fat.c garmin_rgn.h \ garmin_mdr.c garmin_mdr.h \ garmin_route.c align.h extras.h -nodist_libgarmin_a_SOURCES= +nodist_libgarmin_la_SOURCES= if HAVEEXTRAS -nodist_libgarmin_a_SOURCES+=extras.c +nodist_libgarmin_la_SOURCES+=extras.c endif include_HEADERS = libgarmin.h debian/patches/automake0000644000000000000000000000223312170310001012327 0ustar Description: Fix FTBFS due to automake warnings treated as errors Author: Gilles Filippini Bug-Debian: http://bugs.debian.org/713290 Index: libgarmin-0~svn320/configure.ac =================================================================== --- libgarmin-0~svn320.orig/configure.ac 2013-07-13 17:23:16.000000000 +0000 +++ libgarmin-0~svn320/configure.ac 2013-07-13 17:26:47.000000000 +0000 @@ -7,6 +7,7 @@ AC_CONFIG_HEADER([config.h]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) # Checks for programs. +AM_PROG_AR AC_PROG_CC if eval "test x$GCC = xyes"; then CFLAGS="$CFLAGS -Wall -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type" Index: libgarmin-0~svn320/Makefile.inc =================================================================== --- libgarmin-0~svn320.orig/Makefile.inc 2013-07-13 17:23:16.000000000 +0000 +++ libgarmin-0~svn320/Makefile.inc 2013-07-13 17:28:45.000000000 +0000 @@ -1,11 +1,12 @@ pkgdocdir=$(pkgdatadir)/doc +AM_CFLAGS = AM_CPPFLAGS = if !TARGET_WIN32CE #CFLAGS += -shared AM_CPPFLAGS += -fPIC endif if DEBUG -CFLAGS += -g +AM_CFLAGS += -g AM_CPPFLAGS += -DDEBUG endif debian/patches/move-fcntl-before-libgarmin_priv0000644000000000000000000000153512170307313017055 0ustar Description: Fix FTBFS on kfreebsd-* archs libgarmin-priv.h defines O_NOATIME which is then declared as an enum by fcntl.h, causing a compilation error. Moving the include of fcntl.h above libgarmin-priv.h fixes the problem. Author: Gilles Filippini Forwarded: no Index: libgarmin/src/garmin_mdr.c =================================================================== --- libgarmin.orig/src/garmin_mdr.c 2011-04-09 00:34:20.000000000 +0200 +++ libgarmin/src/garmin_mdr.c 2011-04-09 00:34:27.000000000 +0200 @@ -2,6 +2,7 @@ #include #include #include +#include #include "libgarmin.h" #include "libgarmin_priv.h" #include "garmin_fat.h" @@ -9,7 +10,6 @@ #include "garmin_mdr.h" #include #include -#include #include "GarminTypedef.h" struct hdr_mdr_t debian/patches/dont-build-binaries0000644000000000000000000000064312170307313014373 0ustar Don't build binaries for debian. Index: libgarmin/Makefile.am =================================================================== --- libgarmin.orig/Makefile.am 2009-05-17 22:34:18.000000000 +0200 +++ libgarmin/Makefile.am 2009-05-17 22:34:23.000000000 +0200 @@ -4,7 +4,7 @@ SUBDIRS=src data if !TARGET_WIN32CE -SUBDIRS+=utils +#SUBDIRS+=utils endif DIST_SUBDIRS=src data utils pkgdoc_DATA = README COPYING TODO debian/patches/series0000644000000000000000000000011112170307313012020 0ustar dont-build-binaries libtoolize move-fcntl-before-libgarmin_priv automake debian/libgarmin0.dirs0000644000000000000000000000001011204340754012064 0ustar usr/lib debian/libgarmin-dev.install0000644000000000000000000000010111547661775013311 0ustar usr/include/* usr/lib/lib*.a usr/lib/lib*.so usr/lib/pkgconfig/* debian/docs0000644000000000000000000000002411204340754010035 0ustar AUTHORS README TODO debian/copyright0000644000000000000000000000160111204340754011117 0ustar Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat?action=recall&rev=454 Upstream-Name: libgarmin Upstream-Maintainer: Alexander Atanasov Upstream-Source: http://libgarmin.sourceforge.net/ Files: * Copyright: © 2007-2008 Alexander Atanasov License: GPL-2 Files: src/GarminTypedef.h Copyright: © 2006-2007 Oliver Eichler Copyright: © 2008 Alexander Atanasov License: GPL-2+ Files: debian/* Copyright: © 2009 Gilles Filippini License: GPL-2+ License: GPL-2 On Debian systems the full text of the GNU General Public License version 2 can be found in the `/usr/share/common-licenses/GPL-2' file. License: GPL-2+ On Debian systems the full text of the GNU General Public License version 2 can be found in the `/usr/share/common-licenses/GPL-2' file. debian/compat0000644000000000000000000000000211204340754010364 0ustar 7 debian/changelog0000644000000000000000000000215712170314110011033 0ustar libgarmin (0~svn320-4) unstable; urgency=low * New patch: automake Fix FTBFS due to automake warnings treated as errors (closes: #713290) * Fix VCS fields in debian/control * Force build flags from dpkg-buildflags in debian/rules -- Gilles Filippini Sat, 13 Jul 2013 20:11:13 +0200 libgarmin (0~svn320-3) unstable; urgency=low * New patch move-fcntl-before-libgarmin_priv to fix FTBFS on kfreebsd-* -- Gilles Filippini Sat, 09 Apr 2011 00:42:06 +0200 libgarmin (0~svn320-2) unstable; urgency=low * debian/libgarmin-dev.install + Remove libgarmin.la (closes: #621614) * debian/control: + Updated Maintainer field with my @d.o address + Bumped Standards-Version to 3.9.2 (no other changes) * debian/rules: + Migrated to the dh sequencer + Migrated to source format 3.0 (quilt) * Updated debian/README.source -- Gilles Filippini Fri, 08 Apr 2011 22:27:01 +0200 libgarmin (0~svn320-1) unstable; urgency=low * Initial release (Closes: #521466) -- Gilles Filippini Mon, 18 May 2009 13:55:37 +0200 debian/libgarmin-dev.dirs0000644000000000000000000000002411204340754012565 0ustar usr/lib usr/include debian/libgarmin0.symbols0000644000000000000000000001077111204340754012632 0ustar libgarmin.so.0 libgarmin0 #MINVER# bm_is_set@Base 0~svn320 bm_set_bit@Base 0~svn320 bsp_fd_get_bits@Base 0~svn320 bsp_fd_get_bitsmsb@Base 0~svn320 bsp_fd_init@Base 0~svn320 bsp_init@Base 0~svn320 ga_append@Base 0~svn320 ga_clear@Base 0~svn320 ga_empty@Base 0~svn320 ga_free@Base 0~svn320 ga_get@Base 0~svn320 ga_get_abs@Base 0~svn320 ga_get_base@Base 0~svn320 ga_get_count@Base 0~svn320 ga_init@Base 0~svn320 ga_set_base@Base 0~svn320 ga_trim@Base 0~svn320 gar_add_draw_prio@Base 0~svn320 gar_alloc_graph@Base 0~svn320 gar_cp_idx2off@Base 0~svn320 gar_cp_idx2road@Base 0~svn320 gar_debug_level@Base 0~svn320 gar_del_draw_prio@Base 0~svn320 gar_fat_add_file@Base 0~svn320 gar_fat_file2fd@Base 0~svn320 gar_fat_get_fe_by_name@Base 0~svn320 gar_file_baseoffset@Base 0~svn320 gar_file_get_subfiles@Base 0~svn320 gar_file_offset@Base 0~svn320 gar_file_size@Base 0~svn320 gar_find_subdiv_by_idx@Base 0~svn320 gar_find_subfile_byid@Base 0~svn320 gar_find_subfiles@Base 0~svn320 gar_free@Base 0~svn320 gar_free_draworder@Base 0~svn320 gar_free_gmap@Base 0~svn320 gar_free_graph@Base 0~svn320 gar_free_lbl@Base 0~svn320 gar_free_net@Base 0~svn320 gar_free_nod@Base 0~svn320 gar_free_objects@Base 0~svn320 gar_free_poi_properties@Base 0~svn320 gar_free_road@Base 0~svn320 gar_free_road_nod@Base 0~svn320 gar_free_route@Base 0~svn320 gar_free_srch@Base 0~svn320 gar_free_subdiv_data@Base 0~svn320 gar_get_cpoint@Base 0~svn320 gar_get_draw_prio@Base 0~svn320 gar_get_dskimg@Base 0~svn320 gar_get_lbl@Base 0~svn320 gar_get_node@Base 0~svn320 gar_get_object@Base 0~svn320 gar_get_object_by_id@Base 0~svn320 gar_get_object_coord@Base 0~svn320 gar_get_object_dcoord@Base 0~svn320 gar_get_object_deltas@Base 0~svn320 gar_get_object_intlbl@Base 0~svn320 gar_get_object_lbl@Base 0~svn320 gar_get_object_position@Base 0~svn320 gar_get_objects@Base 0~svn320 gar_get_poi_properties@Base 0~svn320 gar_get_road@Base 0~svn320 gar_get_road_by_id@Base 0~svn320 gar_get_subfile_object_byidx@Base 0~svn320 gar_graph2tfmap@Base 0~svn320 gar_img_load@Base 0~svn320 gar_img_load_dskimg@Base 0~svn320 gar_init@Base 0~svn320 gar_init_cfg@Base 0~svn320 gar_init_draworder@Base 0~svn320 gar_init_lbl@Base 0~svn320 gar_init_mdr@Base 0~svn320 gar_init_net@Base 0~svn320 gar_init_nod@Base 0~svn320 gar_init_srch@Base 0~svn320 gar_is_object_dcoord_node@Base 0~svn320 gar_load_fat@Base 0~svn320 gar_load_roadnetwork@Base 0~svn320 gar_load_roads@Base 0~svn320 gar_load_subdiv_data@Base 0~svn320 gar_load_subfile_data@Base 0~svn320 gar_load_subfiles@Base 0~svn320 gar_log_file_date@Base 0~svn320 gar_log_poi_properties@Base 0~svn320 gar_log_road_info@Base 0~svn320 gar_match_sai@Base 0~svn320 gar_mdr_get_files@Base 0~svn320 gar_net_get_lbl_offset@Base 0~svn320 gar_nod_parse_nod3@Base 0~svn320 gar_obj_codepage@Base 0~svn320 gar_obj_type@Base 0~svn320 gar_object_debug_str@Base 0~svn320 gar_object_flags@Base 0~svn320 gar_object_group@Base 0~svn320 gar_object_index@Base 0~svn320 gar_object_mapid@Base 0~svn320 gar_object_subtype@Base 0~svn320 gar_order_objects@Base 0~svn320 gar_parse_tdb@Base 0~svn320 gar_print_buf@Base 0~svn320 gar_read_graph@Base 0~svn320 gar_read_nod2@Base 0~svn320 gar_read_node@Base 0~svn320 gar_rect_contains@Base 0~svn320 gar_rect_log@Base 0~svn320 gar_rects_intersect@Base 0~svn320 gar_rects_intersectboth@Base 0~svn320 gar_rects_overlaps@Base 0~svn320 gar_route@Base 0~svn320 gar_sai2searchres@Base 0~svn320 gar_set_default_poly_order@Base 0~svn320 gar_srch_get_city@Base 0~svn320 gar_srch_get_cityid@Base 0~svn320 gar_srch_get_country@Base 0~svn320 gar_srch_get_countryid@Base 0~svn320 gar_srch_get_region@Base 0~svn320 gar_srch_get_regionid@Base 0~svn320 gar_srch_get_roadid@Base 0~svn320 gar_srch_get_roadname@Base 0~svn320 gar_srch_get_zip@Base 0~svn320 gar_srch_get_zipid@Base 0~svn320 gar_subfile_baseoffset@Base 0~svn320 gar_subfile_get_by_mapid@Base 0~svn320 gar_subfile_offset@Base 0~svn320 gar_subfile_ref@Base 0~svn320 gar_subfile_unload@Base 0~svn320 gar_subfile_unref@Base 0~svn320 gar_update_graph@Base 0~svn320 gclose@Base 0~svn320 glogfn@Base 0~svn320 glseek@Base 0~svn320 gopen@Base 0~svn320 gread@Base 0~svn320 gread_safe@Base 0~svn320 gwrite@Base 0~svn320 list_append@Base 0~svn320 list_append_list@Base 0~svn320 list_append_list_init@Base 0~svn320 list_del@Base 0~svn320 list_init@Base 0~svn320 list_prepend@Base 0~svn320 list_prepend_list@Base 0~svn320 list_prepend_list_init@Base 0~svn320 list_remove@Base 0~svn320 list_remove_init@Base 0~svn320 debian/rules0000755000000000000000000000162012170313514010242 0ustar #!/usr/bin/make -f # -*- makefile -*- # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # This has to be exported to make some magic below work. export DH_OPTIONS export CFLAGS=$(shell dpkg-buildflags --get CFLAGS) export CXXFLAGS=$(shell dpkg-buildflags --get CXXFLAGS) export LDFLAGS=$(shell dpkg-buildflags --get LDFLAGS) %: dh $@ override_dh_auto_configure: [ -f configure ] || sh autosh.sh ./configure --prefix=/usr override_dh_auto_clean: [ ! -f Makefile ] || $(MAKE) clean [ ! -f Makefile ] || $(MAKE) distclean [ ! -f configure ] || rm -f ltmain.sh config.guess config.sub configure libtool aclocal.m4 depcomp install-sh missing config.h.in find $(CURDIR) -name Makefile.in -type f -print0 | xargs -0 rm -f find $(CURDIR) -name .libs -type d -print0 | xargs -0 rm -rf find $(CURDIR) -name .deps -type d -print0 | xargs -0 rm -rf override_dh_makeshlibs: dh_makeshlibs -- -c4 debian/source/0000755000000000000000000000000011547663461010503 5ustar debian/source/format0000644000000000000000000000001411547663461011711 0ustar 3.0 (quilt) debian/watch0000644000000000000000000000026611204340754010223 0ustar version=3 # libgarmin hasn't had any release yet. # Until its development process stabilize, the packaging is done from upstream # SVN tree. # See debian/README.source for details.