From: William Frost <tsmrnd0@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2] DCMTK: new package
Date: Tue, 29 Apr 2014 08:58:14 +0900 [thread overview]
Message-ID: <535EEB16.4090906@gmail.com> (raw)
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 <tsmrnd0@gmail.com>
---
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
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
+
+$(eval $(autotools-package))
--
1.8.1.4
next reply other threads:[~2014-04-28 23:58 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-28 23:58 William Frost [this message]
2014-04-29 5:34 ` [Buildroot] [PATCH v2] DCMTK: new package Thomas Petazzoni
2014-06-12 20:45 ` Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=535EEB16.4090906@gmail.com \
--to=tsmrnd0@gmail.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.