Skip to contentSkip to conversation

add new package proj

PATCH New Zoltan Gyarmati 3 participants 7 messages Dec 16, 2017 – Dec 17, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/3 add new package proj

---
 package/Config.in      |  1 +
 package/proj/Config.in | 13 +++++++++++++
 package/proj/proj.hash |  2 ++
 package/proj/proj.mk   | 13 +++++++++++++
 4 files changed, 29 insertions(+)
 create mode 100644 package/proj/Config.in
 create mode 100644 package/proj/proj.hash
 create mode 100644 package/proj/proj.mk
package/Config.in +1 -0
index e7435eb..1423147 100644
@@ -1594,6 +1594,7 @@ menu "Miscellaneous"
 	source "package/linux-syscall-support/Config.in"
 	source "package/mcrypt/Config.in"
 	source "package/mobile-broadband-provider-info/Config.in"
+	source "package/proj/Config.in"
 	source "package/qemu/Config.in"
 	source "package/qpdf/Config.in"
 	source "package/shared-mime-info/Config.in"
package/proj/Config.in new file +13 -0
new file mode 100644
index 0000000..0dd92cc
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_PROJ
+	bool "proj"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	help
+	  proj.4 is a standard UNIX filter function which converts geographic 
+	  longitude and latitude coordinates into cartesian coordinates
+	  (and vice versa), and it is a C API for software developers to include
+	  coordinate transformation in their own software.
+
+	  http://proj4.org/
+
+comment "proj needs a toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
package/proj/proj.hash new file +2 -0
new file mode 100644
index 0000000..5b1d28d
@@ -0,0 +1,2 @@
+# Fetched from http://download.osgeo.org/proj/proj-4.9.3.tar.gz.md5
+md5 d598336ca834742735137c5674b214a1 proj-4.9.3.tar.gz
package/proj/proj.mk new file +13 -0
new file mode 100644
index 0000000..6a00c5c
@@ -0,0 +1,13 @@
+################################################################################
+#
+# proj
+#
+################################################################################
+
+PROJ_VERSION = 4.9.3
+PROJ_SOURCE = proj-$(PROJ_VERSION).tar.gz
+PROJ_SITE = http://download.osgeo.org/proj
+PROJ_LICENSE = MIT
+PROJ_INSTALL_STAGING = YES
+
+$(eval $(cmake-package))
Signature · 1 line
2.7.4
#1 lore raw

PATCH 2/3 add myself as maintainer for the proj package

---
 DEVELOPERS | 1 +
 1 file changed, 1 insertion(+)
DEVELOPERS +1 -0
index 63674d7..f820b97 100644
@@ -1889,6 +1889,7 @@ F:	utils/scanpypi
 N:	Zoltan Gyarmati <[email protected]>
 F:	package/crudini/
 F:	package/grantlee/
+F:	package/proj/
 F:	package/python-configobj/
 F:	package/python-iniparse/
 F:	package/qjson/
Signature · 1 line
2.7.4
#2 lore raw

PATCH 3/3 package/shapelib: version bump, use the new autotools build config and add new dependency on proj

In reply to Zoltan Gyarmati
---
 package/shapelib/Config.in     |  5 +++++
 package/shapelib/shapelib.hash |  2 +-
 package/shapelib/shapelib.mk   | 17 +++--------------
 3 files changed, 9 insertions(+), 15 deletions(-)
package/shapelib/Config.in +5 -0
index aa2297b..97ca403 100644
@@ -1,5 +1,7 @@
 config BR2_PACKAGE_SHAPELIB
 	bool "shapelib"
+	depends on BR2_INSTALL_LIBSTDCPP
+	select BR2_PACKAGE_PROJ
 	help
 	  The Shapefile C Library provides the ability to write simple
 	  C programs for reading, writing and updating (to a limited
@@ -7,3 +9,6 @@ config BR2_PACKAGE_SHAPELIB
 	  (.dbf).
 
 	  http://shapelib.maptools.org/
+
+comment "shapelib needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP 
package/shapelib/shapelib.hash +1 -1
index f3f812e..4f51392 100644
@@ -1,2 +1,2 @@
 # Locally computed
-sha256 23d474016158ab5077db2f599527631706ba5c0dc7c4178a6a1d685bb014f68f  shapelib-1.3.0.tar.gz
+sha256 a4c94817365761a3a4c21bb3ca1c680a6bdfd3edd61df9fdd291d3e7645923b3  shapelib-1.4.1.tar.gz
package/shapelib/shapelib.mk +3 -14
index 34b6253..d6217ff 100644
@@ -4,22 +4,11 @@
 #
 ################################################################################
 
-SHAPELIB_VERSION = 1.3.0
+SHAPELIB_VERSION = 1.4.1
 SHAPELIB_SITE = http://download.osgeo.org/shapelib
 SHAPELIB_LICENSE = MIT or LGPL-2.0
 SHAPELIB_LICENSE_FILES = web/license.html LICENSE.LGPL
 SHAPELIB_INSTALL_STAGING = YES
+SHAPELIB_DEPENDENCIES = proj
 
-define SHAPELIB_BUILD_CMDS
-	$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)
-endef
-
-define SHAPELIB_INSTALL_STAGING_CMDS
-	$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(STAGING_DIR)/usr/ lib_install
-endef
-
-define SHAPELIB_INSTALL_TARGET_CMDS
-	$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(TARGET_DIR)/usr/ bin_install
-endef
-
-$(eval $(generic-package))
+$(eval $(autotools-package))
Signature · 1 line
2.7.4
#3 lore raw

PATCH 3/3 package/shapelib: version bump, use the new autotools build config and add new dependency on proj

Hi Zoltan,

Quoted 12 lines · Zoltan Gyarmati
---
 package/shapelib/Config.in     |  5 +++++
 package/shapelib/shapelib.hash |  2 +-
 package/shapelib/shapelib.mk   | 17 +++--------------
 3 files changed, 9 insertions(+), 15 deletions(-)
package/shapelib/Config.in +0 -0
index aa2297b..97ca403 100644

package/shapelib/Config.in line 4

Quoted 4 lines
package/shapelib/Config.in +2 -0
@@ -1,5 +1,7 @@
 config BR2_PACKAGE_SHAPELIB
 	bool "shapelib"
+	depends on BR2_INSTALL_LIBSTDCPP
+	select BR2_PACKAGE_PROJ

You need to propagate here the threads dependency of proj.

baruch

Quoted 7 lines
package/shapelib/Config.in +0 -0
 	help
 	  The Shapefile C Library provides the ability to write simple
 	  C programs for reading, writing and updating (to a limited
@@ -7,3 +9,6 @@ config BR2_PACKAGE_SHAPELIB
 	  (.dbf).
 
 	  http://shapelib.maptools.org/
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
#4 lore raw

PATCH 3/3 package/shapelib: version bump, use the new autotools build config and add new dependency on proj

In reply to Zoltan Gyarmati

Hello,

Quoted 6 lines · Zoltan Gyarmati
---
 package/shapelib/Config.in     |  5 +++++
 package/shapelib/shapelib.hash |  2 +-
 package/shapelib/shapelib.mk   | 17 +++--------------
 3 files changed, 9 insertions(+), 15 deletions(-)

I've applied, after adding the thread dependency (as noticed by Baruch) and tweaking the commit log (your commit title was too long).

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH 3/3 package/shapelib: version bump, use the new autotools build config and add new dependency on proj

Dear Thomas&Baruch,

great, thanks for the review and the tweaks!

Regards,

Zoltan Gyarmati
https://zgyarmati.de

Quoted 9 lines · Thomas Petazzoni

Hello,

Quoted 6 lines · Zoltan Gyarmati
---
 package/shapelib/Config.in     |  5 +++++
 package/shapelib/shapelib.hash |  2 +-
 package/shapelib/shapelib.mk   | 17 +++--------------
 3 files changed, 9 insertions(+), 15 deletions(-)
Quoted 6 lines

I've applied, after adding the thread dependency (as noticed by Baruch) and tweaking the commit log (your commit title was too long).

Thanks!

Thomas

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171217/c3541d62/attachment.asc>

#6 lore raw

PATCH 1/3 add new package proj

In reply to Zoltan Gyarmati

Hello,

I've applied your patch, after doing a number of changes. First of all, I've renamed it to "proj: new package", which is the convention when adding new package. Then, the DEVELOPERS change has been squashed in the patch adding the package.

Quoted 6 lines · Zoltan Gyarmati
package/proj/Config.in new file +0 -0
new file mode 100644
index 0000000..0dd92cc

package/proj/Config.in line 8

Quoted 8 lines
package/proj/Config.in new file +8 -0
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_PROJ
+	bool "proj"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	help
+	  proj.4 is a standard UNIX filter function which converts geographic 
+	  longitude and latitude coordinates into cartesian coordinates
+	  (and vice versa), and it is a C API for software developers to include
+	  coordinate transformation in their own software.

Lines too long and trailing whitespace here, I've fixed this up.

package/proj/Config.in line 10

Quoted 2 lines
package/proj/Config.in new file +2 -0
+# Fetched from http://download.osgeo.org/proj/proj-4.9.3.tar.gz.md5
+md5 d598336ca834742735137c5674b214a1 proj-4.9.3.tar.gz

A md5 hash alone is not sufficient, so I've added a sha256 hash. While I was at it, I've added a hash for the license file as well.

package/proj/Config.in

Quoted 4 lines
package/proj/Config.in new file +4 -0
+PROJ_VERSION = 4.9.3
+PROJ_SOURCE = proj-$(PROJ_VERSION).tar.gz
+PROJ_SITE = http://download.osgeo.org/proj
+PROJ_LICENSE = MIT

I've added PROJ_LICENSE_FILES

package/proj/Config.in

Quoted 3 lines
package/proj/Config.in new file +3 -0
+PROJ_INSTALL_STAGING = YES
+
+$(eval $(cmake-package))

Last but not least, I've switched to using the provided autotools build system, because it correctly handled building a static library. Indeed, your package using CMake was failing to build in static-only configurations.

Applied with those fixes. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com