Makefile cleanup (lang section)
[packages.git] / lang / python / Makefile
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8  
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=python
12 PKG_VERSION:=2.4.3
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=Python-$(PKG_VERSION).tar.bz2
16 PKG_SOURCE_URL:=http://www.python.org/ftp/python/2.4.3/
17 PKG_MD5SUM:=141c683447d5e76be1d2bd4829574f02
18 PKG_CAT:=bzcat
19
20 PKG_BUILD_DIR:=$(BUILD_DIR)/Python-$(PKG_VERSION)
21
22 include $(INCLUDE_DIR)/package.mk
23
24 define Package/python
25         SECTION:=lang
26         CATEGORY:=Languages
27         TITLE:=Python programming language
28         URL:=http://www.python.org
29         DEPENDS:=+uclibcxx
30 endef
31
32 define Package/python/description
33 Python programming language
34         Python is a dynamic object-oriented programming language that 
35         can be used for many kinds of software development. It offers 
36         strong support for integration with other languages and tools, 
37         comes with extensive standard libraries, and can be learned in a 
38         few days. Many Python programmers report substantial productivity 
39         gains and feel the language encourages the development of higher 
40         quality, more maintainable code.
41 endef
42
43 define Build/Configure
44         (cd $(PKG_BUILD_DIR); \
45                 CONFIG_SITE= \
46                 ./configure --with-threads=no; \
47                 $(MAKE) python Parser/pgen; \
48                 mv python hostpython; \
49                 mv Parser/pgen Parser/hostpgen; \
50                 make distclean; \
51                 echo "import sys" > $(PKG_BUILD_DIR)/setup.py.new; \
52                 echo "sys.path.append('$(PKG_BUILD_DIR)/Lib')" >> $(PKG_BUILD_DIR)/setup.py.new; \
53                 cat $(PKG_BUILD_DIR)/setup.py.new $(PKG_BUILD_DIR)/setup.py > $(PKG_BUILD_DIR)/setup.py.foo; \
54                 mv $(PKG_BUILD_DIR)/setup.py.foo $(PKG_BUILD_DIR)/setup.py; \
55                 rm $(PKG_BUILD_DIR)/setup.py.new; \
56         );
57         $(call Build/Configure/Default, \
58                 --disable-shared \
59                 --sysconfdir=/etc \
60                 --with-threads=no, \
61                 HOSTPYTHON=./hostpython \
62                 HOSTPGEN=./Parser/hostpgen \
63         )
64 endef
65
66 MAKE_OPTS= \
67                 $(TARGET_CONFIGURE_OPTS) \
68                 CFLAGS="$(TARGET_CFLAGS)" \
69                 LD_LIBRARY_PATH="$(STAGING_DIR)/lib:$(LD_LIBRARY_PATH)" \
70                 LD="$(TARGET_CC)" \
71                 HOSTPYTHON=./hostpython \
72                 HOSTPGEN=./Parser/hostpgen
73
74 define Build/Compile
75         $(MAKE) -C $(PKG_BUILD_DIR) \
76                 DESTDIR="$(PKG_INSTALL_DIR)" \
77                 $(MAKE_OPTS) \
78                 all
79 endef
80
81 define Package/python/install
82         mkdir -p $(1)/lib
83         $(MAKE) -C $(PKG_BUILD_DIR) \
84                 $(MAKE_OPTS) \
85                 DESTDIR="$(1)" \
86                 install
87 endef
88
89 $(eval $(call BuildPackage,python))