packages/utils/gddrescue/Makefile
Rosen Penev f586d5e79e
gddrescue: Do not build with uClibc-ng
From the developer:

It seems that uClibc-ng is defining fgetc, fputc, feof, and ferror as
macros and not including them in std.

IMO this is a bug in uClibc-ng (maybe caused by lack of clarity in the
C++ standard), because even the C functions that are alowed to be
defined as macros (putc, getc) should be included in std for
consistency. Just imagine the chaos if std::getc were defined or
undefined depending on how it is implemented.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(9172e2828f)
2019-07-19 20:00:00 -07:00

51 lines
1.3 KiB
Makefile

#
# Copyright (C) 2018 Lucian Cristian
#
include $(TOPDIR)/rules.mk
PKG_NAME:=gddrescue
PKG_VERSION:=1.23
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.xz
PKG_SOURCE_URL:=http://http.debian.net/debian/pool/main/g/$(PKG_NAME)
PKG_HASH:=5831d7e24070bc700d8f22deaeec56af1149392ce30ae67254096eaf8c9169ab
PKG_MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=LICENSE
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/uclibc++.mk
include $(INCLUDE_DIR)/package.mk
define Package/gddrescue
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Data recovery tool
URL:=https://www.gnu.org/software/ddrescue/
DEPENDS:=$(CXX_DEPENDS) @!USE_UCLIBC
endef
define Package/gddrescue/description
GNU ddrescue is a data recovery tool. It copies data from one file
or block device (hard disc, cdrom, etc) to another, trying to rescue
the good parts first in case of read errors.
endef
CONFIGURE_ARGS += \
CXX="$(TARGET_CXX)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \
CXXFLAGS="$(TARGET_CXXFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)"
define Package/gddrescue/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ddrescue $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ddrescuelog $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,gddrescue))