From patchwork Mon Apr 28 23:58:14 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: William Frost X-Patchwork-Id: 343628 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from silver.osuosl.org (silver.osuosl.org [140.211.166.136]) by ozlabs.org (Postfix) with ESMTP id DCB7E1400BE for ; Tue, 29 Apr 2014 09:59:28 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E5FC831BC8; Mon, 28 Apr 2014 23:59:26 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pZw4e57ob5N4; Mon, 28 Apr 2014 23:59:24 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id ED2C931B7B; Mon, 28 Apr 2014 23:59:23 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 93E3A1BF9EC for ; Mon, 28 Apr 2014 23:59:22 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 8A776899B6 for ; Mon, 28 Apr 2014 23:59:22 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kQ4N+YwLPq9h for ; Mon, 28 Apr 2014 23:59:21 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pd0-f175.google.com (mail-pd0-f175.google.com [209.85.192.175]) by whitealder.osuosl.org (Postfix) with ESMTPS id DB11789711 for ; Mon, 28 Apr 2014 23:59:21 +0000 (UTC) Received: by mail-pd0-f175.google.com with SMTP id fp1so4147129pdb.20 for ; Mon, 28 Apr 2014 16:59:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=eKoEaw4b5kqX0tosv1r+G9/yGnaCNUYV6r6BaN9h07A=; b=DyxB4KSA4qQKZVCyewfSDLXWtLwkVy934ovkdM+RxDa9g551nikURKyvxCainue3fb Bo965ImhllHuJFSHrQdlCoY/kNQurhgosx7hn/PJ9M0d1VhIvk8zlk9wwQZjdt9fuR2w lqwore6J8pldr4ODWn2qUtjs6GmvCP5Pxgbyiznl0A0/9XiBD2rzY54DhSza0CL2FW/3 yh3JFjgC6QIvPrfNf7Xn8fjympKp0b6iCtgTVmCROeI6+0zEm7KrsEfdnRpuHPb0xzqX SoXaoLZHuJAKS20fIrmimR8b9HBQT4hckLT7fzWA8yzzckVxHOGIftS2+h+uUXeS3KTs Gl5A== X-Received: by 10.68.136.133 with SMTP id qa5mr28616015pbb.63.1398729561582; Mon, 28 Apr 2014 16:59:21 -0700 (PDT) Received: from [192.168.10.142] ([114.205.88.46]) by mx.google.com with ESMTPSA id gz11sm37615059pbd.1.2014.04.28.16.59.20 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 28 Apr 2014 16:59:20 -0700 (PDT) Message-ID: <535EEB16.4090906@gmail.com> Date: Tue, 29 Apr 2014 08:58:14 +0900 From: William Frost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 MIME-Version: 1.0 To: buildroot@busybox.net Subject: [Buildroot] [PATCH v2] DCMTK: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net It works fine but still every time I type "make all" in Buildroot dcmtk make the configure process again. Any idea on how to solve this? Signed-off-by: William Frost --- Changes v1 -> v2: - fixed DCMTK_LICENSE to BDS - changed --host=$(arm-none-linux-gnueabi) to --host=$(GNU_TARGET_NAME) - fixed PKG_CONFIG_PATH and PKG_CONFIG_SYSROOT_DIR (suggested by Thomas De Schampheleire): - fixed all lines to less than 80 characters in Config.in ans dcmtk.mk - changed BR2_DCMTK_VERSION to BR2_PACKAGE_DCMTK_VERSION - removed DCMTK_SOURCE --- package/Config.in | 1 + package/dcmtk/Config.in | 38 ++++++++++++++++++++++ package/dcmtk/dcmtk.mk | 85 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 124 insertions(+) create mode 100644 package/dcmtk/Config.in create mode 100644 package/dcmtk/dcmtk.mk +$(eval $(autotools-package)) diff --git a/package/Config.in b/package/Config.in index 07fd166..b88c0b0 100644 --- a/package/Config.in +++ b/package/Config.in @@ -568,6 +568,7 @@ endmenu menu "Graphics" source "package/atk/Config.in" source "package/cairo/Config.in" +source "package/dcmtk/Config.in" source "package/fltk/Config.in" source "package/fontconfig/Config.in" source "package/freetype/Config.in" diff --git a/package/dcmtk/Config.in b/package/dcmtk/Config.in new file mode 100644 index 0000000..ba9d2ee --- /dev/null +++ b/package/dcmtk/Config.in @@ -0,0 +1,38 @@ +config BR2_PACKAGE_DCMTK + bool "dcmtk" + help + DCMTK is a collection of libraries and applications implementing + large parts the DICOM standard. It includes software for examining, + constructing and converting DICOM image files, handling offline + media, sending and receiving images over a network connection, as + well as demonstrative image storage and worklist servers. DCMTK is + is written in a mixture of ANSI C and C++. It comes in complete + source code and is made available as "open source" software. + + http://dicom.offis.de/dcmtk.php.en + +if BR2_PACKAGE_DCMTK + +choice + prompt "DCMTK Version" + default BR2_PACKAGE_DCMTK_VERSION_3_6_0 + help + Select the version of DCMTK you wish to use. + + config BR2_PACKAGE_DCMTK_VERSION_3_6_0 + bool "DCMTK 3.6.0" + + config BR2_PACKAGE_DCMTK_VERSION_SNAPSHOT_2012 + bool "DCMTK 3.6.1 snapshot (2012.11.02)" + + config BR2_PACKAGE_DCMTK_VERSION_SNAPSHOT_2013 + bool "DCMTK 3.6.1 snapshot (2013.11.14)" + +endchoice + +config BR2_PACKAGE_DCMTK_VERSION + string + default "3.6.0" if BR2_PACKAGE_DCMTK_VERSION_3_6_0 + default "3.6.1_20121102" if BR2_PACKAGE_DCMTK_VERSION_SNAPSHOT_2012 + default "3.6.1_20131114" if BR2_PACKAGE_DCMTK_VERSION_SNAPSHOT_2013 +endif diff --git a/package/dcmtk/dcmtk.mk b/package/dcmtk/dcmtk.mk new file mode 100644 index 0000000..5c9a851 --- /dev/null +++ b/package/dcmtk/dcmtk.mk @@ -0,0 +1,85 @@ +################################################################################ +# +# dcmtk +# +################################################################################ +DCMTK_VERSION = $(call qstrip,$(BR2_PACKAGE_DCMTK_VERSION)) + +ifeq ($(BR2_PACKAGE_DCMTK_VERSION), "3.6.0") +DCMTK_SITE = http://dicom.offis.de/download/dcmtk/dcmtk360/ +endif +ifeq ($(BR2_PACKAGE_DCMTK_VERSION),"3.6.1_20121102") +DCMTK_SITE = http://dicom.offis.de/download/dcmtk/snapshot/old +endif +ifeq ($(BR2_PACKAGE_DCMTK_VERSION),"3.6.1_20131114") +DCMTK_SITE = http://dicom.offis.de/download/dcmtk/snapshot +endif + +DCMTK_LICENSE = BSD +DCMTK_LICENSE_FILES = COPYING +DCMTK_INSTALL_STAGING = YES + +DCMTK_CFLAGS = $(TARGET_CFLAGS) --sysroot=$(STAGING_DIR) -O -D_REENTRANT \ + -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE \ + -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -Wall \ + -Wno-psabi + +DCMTK_CXXFLAGS = $(TARGET_CFLAGS) --sysroot=$(STAGING_DIR) -O -D_REENTRANT \ + -D_XOPEN_SOURCE_EXTENDED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE \ + -D_BSD_COMPAT -D_OSF_SOURCE -D_POSIX_C_SOURCE=199506L -Wall \ + -Wno-psabi + +DCMTK_CPPFLAGS = $(TARGET_CFLAGS) --sysroot=$(STAGING_DIR) +DCMTK_LDFLAGS = $(TARGET_CFLAGS) --sysroot=$(STAGING_DIR) + +DCMTK_INSTALL_STAGING_OPT = DESTDIR=$(STAGING_DIR) STRIP=$(TARGET_STRIP) \ + install + +DCMTK_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) STRIP=$(TARGET_STRIP) install + +DCMTK_CONF_OPT = --without-libtiff --without-openssl --without-libxml \ + --without-libpng --without-libsndfile --disable-debug \ + --without-private-tags --enable-std-includes --disable-rpath + +ifeq ($(BR2_PACKAGE_ZLIB),y) + DCMTK_DEPENDENCIES += zlib +else + DCMTK_CONF_OPT += --without-zlib +endif +VERBOSE=1 + +define DCMTK_CONFIG_SET + $(CAT) $(@D)/config/Makefile.def | $(SED) 's%^$(1).*%$(1) = $(2)%g' \ + $(@D)/config/Makefile.def +endef + +define DCMTK_CONFIGURE_CMDS + (cd $(@D); \ + CFLAGS="$(DCMTK_CFLAGS)" \ + CXXFLAGS="$(DCMTK_CXXFLAGS)" \ + CPPFLAGS="$(DCMTK_CPPFLAGS)" \ + LDFLAGS="$(DCMTK_LDFLAGS)" \ + ARFLAGS=cru \ + CC=$(TARGET_CC) \ + CXX=$(TARGET_CXX) \ + RANLIB=$(TARGET_RANLIB) \ + AR=$(TARGET_AR) \ + STRIP=$(TARGET_STRIP) \ + PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig" \ + PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + MAKEFLAGS="$(MAKEFLAGS) -j$(PARALLEL_JOBS)" ./configure \ + $(if $(VERBOSE),-verbose,-silent) \ + $(DCMTK_CONF_OPT) \ + ac_cv_my_c_rightshift_unsigned=no --prefix=$(STAGING_DIR)/usr \ + --with-zlibinc=$(STAGING_DIR)/usr \ + --host=$(GNU_TARGET_NAME) \ + ) +endef + +define DCMTK_BUILD_CMDS + $(call DCMTK_CONFIG_SET,"CC =",$(TARGET_CC)) + $(MAKE) -C $(@D) install-lib +endef +