fftw3: add missing dependency
[openwrt/svn-archive/archive.git] / libs / fftw3 / Makefile
1 #
2 # Copyright (C) 2007-2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=fftw3
11 PKG_VERSION:=3.2.2
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=fftw-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=http://www.fftw.org
16 PKG_MD5SUM:=b616e5c91218cc778b5aa735fefb61ae
17
18 PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/fftw-$(PKG_VERSION)
19 PKG_FIXUP:=autoreconf
20
21 include $(INCLUDE_DIR)/package.mk
22
23 define Package/fftw3
24 SECTION:=libs
25 CATEGORY:=Libraries
26 DEPENDS:=@!avr32 +libpthread
27 VARIANT:=double
28 TITLE:=Fast Fourier transform library
29 URL:=http://www.fftw.org/
30 endef
31
32 define Package/fftw3f
33 $(call Package/fftw3)
34 VARIANT:=single
35 TITLE+= (single precision)
36 endef
37
38 define Package/fftw3l
39 $(call Package/fftw3)
40 DEPENDS:=@BROKEN
41 VARIANT:=long-double
42 TITLE+= (long-double precision)
43 endef
44
45 define Package/fftw3/description
46 FFTW is a collection of fast C routines for computing the
47 Discrete Fourier Transform in one or more dimensions. It
48 includes complex, real, and parallel transforms, and can
49 handle arbitrary array sizes efficiently.
50 endef
51
52 define Package/fftw3f/description
53 $(call Package/fftw3/description)
54
55 This package contains the single precision library.
56 endef
57
58 define Package/fftw3l/description
59 $(call Package/fftw3/description)
60
61 This package contains the long-double precision library.
62 endef
63
64 TARGET_CFLAGS += $(FPIC)
65
66 CONFIGURE_ARGS += \
67 --prefix=/usr \
68 --without-libiconv-prefix \
69 --without-libintl-prefix \
70 --disable-nls \
71 --enable-shared \
72 --enable-threads \
73 --enable-type-prefix \
74 --disable-debug \
75 --disable-fortran
76
77 ifeq ($(BUILD_VARIANT), single)
78 CONFIGURE_ARGS += \
79 --enable-single
80 endif
81
82 ifeq ($(BUILD_VARIANT), long-double)
83 CONFIGURE_ARGS += \
84 --enable-long-double
85 endif
86
87 define Build/Compile
88 $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install
89 endef
90
91 define Build/InstallDev
92 $(INSTALL_DIR) $(1)/usr/include
93 $(CP) $(PKG_INSTALL_DIR)/usr/include/fftw3.h $(1)/usr/include
94 $(INSTALL_DIR) $(1)/usr/lib
95 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3*.{a,la} $(1)/usr/lib
96 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3*.so* $(1)/usr/lib
97 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
98 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
99 endef
100
101 define Package/fftw3/install
102 $(INSTALL_DIR) $(1)/usr/lib
103 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3.so* $(1)/usr/lib/
104 endef
105
106 define Package/fftw3f/install
107 $(INSTALL_DIR) $(1)/usr/lib
108 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3f.so* $(1)/usr/lib/
109 endef
110
111 define Package/fftw3l/install
112 $(INSTALL_DIR) $(1)/usr/lib
113 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3l.so* $(1)/usr/lib/
114 endef
115
116 $(eval $(call BuildPackage,fftw3))
117 $(eval $(call BuildPackage,fftw3f))
118 $(eval $(call BuildPackage,fftw3l))