nsim: symbols got renamed
[openadk.git] / package / python2 / Makefile
blob358866b0f3650daa3dbffa3a416e3da2681dd26c
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include ${ADK_TOPDIR}/rules.mk
6 PKG_NAME:= python2
7 PKG_VERSION:= 2.7.14
8 PKG_RELEASE:= 1
9 PKG_HASH:= 304c9b202ea6fbd0a4a8e0ad3733715fbd4749f2204a9173a58ec53c32ea73e8
10 PKG_DESCR:= python2 script interpreter
11 PKG_SECTION:= dev/lang
12 PKG_DEPENDS:= libffi
13 PKG_BUILDDEP:= libffi python2-host
14 HOST_BUILDDEP:= libffi-host libressl-host
15 PKG_NEEDS:= threads
16 PKG_URL:= http://www.python.org/
17 PKG_SITES:= http://www.python.org/ftp/python/${PKG_VERSION}/
18 PKG_OPTS:= dev
20 DISTFILES:= Python-${PKG_VERSION}.tgz
21 WRKDIST= ${WRKDIR}/Python-${PKG_VERSION}
23 PKG_FLAVOURS_PYTHON2:= MOD_ZLIB MOD_BZ2 MOD_EXPAT MOD_SQLITE MOD_GDBM
24 PKG_FLAVOURS_PYTHON2+= MOD_NCURSES MOD_SSL MOD_READLINE
26 PKGFD_MOD_ZLIB:= zlib support
27 PKGFB_MOD_ZLIB:= zlib
28 PKGFS_MOD_ZLIB:= zlib
29 PKGFD_MOD_BZ2:= bzip2 support
30 PKGFB_MOD_BZ2:= bzip2
31 PKGFS_MOD_BZ2:= libbz2
32 PKGFD_MOD_EXPAT:= xml support
33 PKGFB_MOD_EXPAT:= expat
34 PKGFS_MOD_EXPAT:= libexpat
35 PKGFD_MOD_SQLITE:= sqlite support
36 PKGFB_MOD_SQLITE:= sqlite
37 PKGFS_MOD_SQLITE:= libsqlite
38 PKGFD_MOD_GDBM:= gdbm support
39 PKGFB_MOD_GDBM:= gdbm
40 PKGFS_MOD_GDBM:= libgdbm
41 PKGFD_MOD_NCURSES:= ncurses support
42 PKGFB_MOD_NCURSES:= ncurses
43 PKGFS_MOD_NCURSES:= libncurses
44 PKGFD_MOD_READLINE:= readline support
45 PKGFB_MOD_READLINE:= readline
46 PKGFS_MOD_READLINE:= libreadline
47 PKGFD_MOD_SSL:= ssl support
48 PKGFB_MOD_SSL:= libressl
49 PKGFS_MOD_SSL:= libressl
51 include ${ADK_TOPDIR}/mk/host.mk
52 include ${ADK_TOPDIR}/mk/package.mk
54 $(eval $(call HOST_template,PYTHON2,python2,${PKG_VERSION}-${PKG_RELEASE}))
55 $(eval $(call PKG_template,PYTHON2,python2,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
57 define PKG_mod_template
59 INSTALL_MODS_$${ADK_PACKAGE_${1}}+= ${2}-install
61 ${2}-install:
62 ${INSTALL_DIR} $$(IDIR_$(1))/usr/lib/python2.7/lib-dynload
63 for m in ${2}; do \
64 ${INSTALL_DATA} $(WRKINST)/usr/lib/python2.7/lib-dynload/$$$${m}*.so $$(IDIR_$(1))/usr/lib/python2.7/lib-dynload ;\
65 done
66 endef
68 $(eval $(call PKG_template,PYTHON2_MOD_ZLIB,python2-mod-zlib,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_ZLIB},${PKGFD_MOD_ZLIB},${PKG_SECTION}))
69 $(eval $(call PKG_template,PYTHON2_MOD_BZ2,python2-mod-bz2,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_BZ2},${PKGFD_MOD_BZ2},${PKG_SECTION}))
70 $(eval $(call PKG_template,PYTHON2_MOD_EXPAT,python2-mod-expat,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_EXPAT},${PKGFD_MOD_EXPAT},${PKG_SECTION}))
71 $(eval $(call PKG_template,PYTHON2_MOD_SQLITE,python2-mod-sqlite,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_SQLITE},${PKGFD_MOD_SQLITE},${PKG_SECTION}))
72 $(eval $(call PKG_template,PYTHON2_MOD_GDBM,python2-mod-gdbm,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_GDBM},${PKGFD_MOD_GDBM},${PKG_SECTION}))
73 $(eval $(call PKG_template,PYTHON2_MOD_NCURSES,python2-mod-ncurses,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_NCURSES},${PKGFD_MOD_NCURSES},${PKG_SECTION}))
74 $(eval $(call PKG_template,PYTHON2_MOD_SSL,python2-mod-ssl,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_SSL},${PKGFD_MOD_SSL},${PKG_SECTION}))
75 $(eval $(call PKG_template,PYTHON2_MOD_READLINE,python2-mod-readline,$(PKG_VERSION)-${PKG_RELEASE},${PKGFS_MOD_READLINE},${PKGFD_MOD_READLINE},${PKG_SECTION}))
77 $(eval $(call PKG_mod_template,PYTHON2_MOD_ZLIB,zlib))
78 $(eval $(call PKG_mod_template,PYTHON2_MOD_BZ2,bz2))
79 $(eval $(call PKG_mod_template,PYTHON2_MOD_EXPAT,pyexpat))
80 $(eval $(call PKG_mod_template,PYTHON2_MOD_SQLITE,_sqlite))
81 $(eval $(call PKG_mod_template,PYTHON2_MOD_GDBM,gdbm))
82 $(eval $(call PKG_mod_template,PYTHON2_MOD_NCURSES,_curses))
83 $(eval $(call PKG_mod_template,PYTHON2_MOD_SSL,_ssl))
84 $(eval $(call PKG_mod_template,PYTHON2_MOD_READLINE,readline))
86 ifeq ($(ADK_TARGET_USE_STATIC_LIBS_ONLY),y)
87 CONFIGURE_ARGS+= --disable-shared
88 endif
90 HOST_CFLAGS+= -fPIC
92 AUTOTOOL_STYLE:= autoreconf
93 CONFIGURE_ENV+= ac_cv_have_long_long_format=yes \
94 ac_cv_file__dev_ptmx=yes \
95 ac_cv_file__dev_ptc=no
96 CONFIGURE_ARGS+= --with-threads \
97 --disable-toolbox-glue \
98 --disable-ipv6 \
99 --with-system-ffi \
100 --without-cxx-main
102 HOST_CONFIGURE_ENV+= MACOSX_DEPLOYMENT_TARGET=10.9
103 HOST_CONFIGURE_ARGS+= --with-threads \
104 --with-system-ffi \
105 --disable-ipv6 \
106 --disable-toolbox-glue \
107 --without-cxx-main
109 hostpre-configure:
110 $(CP) $(ADK_TOPDIR)/package/python2/files/patch-Lib_distutils_sysconfig_py $(WRKBUILD)
111 $(SED) "s#@@STAGING_TARGET_DIR@@#$(STAGING_TARGET_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py
112 $(SED) "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py
113 (cd $(WRKBUILD) && ${PATCHP0} < patch-Lib_distutils_sysconfig_py)
114 $(SED) "s#@EXENAME@#$(STAGING_HOST_DIR)/usr/bin/python#" \
115 $(WRKBUILD)/Misc/python-config.in
117 hostpost-install:
118 $(CP) $(ADK_TOPDIR)/package/python2/files/python-config.patch $(WRKBUILD)/
119 $(SED) "s#@@STAGING_TARGET_DIR@@#$(STAGING_TARGET_DIR)#" $(WRKBUILD)/python-config.patch
120 $(SED) "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#" $(WRKBUILD)/python-config.patch
121 (cd $(STAGING_HOST_DIR)/usr/bin && \
122 ${PATCHP0} < $(WRKBUILD)/python-config.patch)
124 pre-configure:
125 $(CP) $(ADK_TOPDIR)/package/python2/files/patch-Lib_distutils_sysconfig_py $(WRKBUILD)
126 $(SED) "s#@@STAGING_TARGET_DIR@@#$(STAGING_TARGET_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py
127 $(SED) "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py
128 (cd $(WRKBUILD) && ${PATCHP0} <$(WRKBUILD)/patch-Lib_distutils_sysconfig_py)
129 $(SED) "s#@EXENAME@#$(STAGING_HOST_DIR)/usr/bin/python#" \
130 $(WRKBUILD)/Misc/python-config.in
132 ifeq ($(ADK_TARGET_USE_STATIC_LIBS_ONLY),y)
133 python2-install:
134 else
135 python2-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m}
136 endif
137 ${INSTALL_DIR} ${IDIR_PYTHON2}/usr/bin ${IDIR_PYTHON2}/usr/lib
138 ${INSTALL_DIR} ${IDIR_PYTHON2}/usr/include/python2.7
139 ${INSTALL_BIN} ${WRKINST}/usr/bin/python ${IDIR_PYTHON2}/usr/bin
140 ${INSTALL_DIR} ${IDIR_PYTHON2}/usr/lib/python2.7
141 ${CP} ${WRKINST}/usr/lib/libpython*.* ${IDIR_PYTHON2}/usr/lib
142 ${CP} ${WRKINST}/usr/lib/python2.7/* ${IDIR_PYTHON2}/usr/lib/python2.7
143 ${CP} ${WRKINST}/usr/include/python2.7/pyconfig.h \
144 ${IDIR_PYTHON2}/usr/include/python2.7
145 @-for i in zlib bz2 _curses _ssl gdbm _sqlite pyexpat readline; do \
146 rm ${IDIR_PYTHON2}/usr/lib/python2.7/lib-dynload/$${i}*so 2>/dev/null; \
147 done
149 include ${ADK_TOPDIR}/mk/host-bottom.mk
150 include ${ADK_TOPDIR}/mk/pkg-bottom.mk