Browse Source

python: enable shared python lib; make this the norm

This will reduce the bloat when users will want to compile in their
Python C extensions.
There will be a initial bloat (several kb) if just Python
is installed, but that will be compensated when users will add more
C extensions.

During the build we also have to add Python's PKG_BUILD_DIR
so that the shared lib is found when compiling Python's
built-in C extensions.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
lilik-openwrt-22.03
Alexandru Ardelean 10 years ago
parent
commit
a1f86a6870
1 changed files with 4 additions and 3 deletions
  1. +4
    -3
      lang/python/Makefile

+ 4
- 3
lang/python/Makefile View File

@ -140,7 +140,7 @@ MAKE_FLAGS:=\
DESTDIR="$(PKG_INSTALL_DIR)" \ DESTDIR="$(PKG_INSTALL_DIR)" \
CROSS_COMPILE=yes \ CROSS_COMPILE=yes \
CFLAGS="$(TARGET_CFLAGS) -DNDEBUG -fno-inline" \ CFLAGS="$(TARGET_CFLAGS) -DNDEBUG -fno-inline" \
LDFLAGS="$(TARGET_LDFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS) -L$(PKG_BUILD_DIR)" \
LD="$(TARGET_CC)" \ LD="$(TARGET_CC)" \
PGEN=pgen2 PGEN=pgen2
@ -155,7 +155,7 @@ define Build/Configure
$(CP) ./files/config.site $(PKG_BUILD_DIR) $(CP) ./files/config.site $(PKG_BUILD_DIR)
$(call Build/Configure/Default, \ $(call Build/Configure/Default, \
--sysconfdir=/etc \ --sysconfdir=/etc \
--disable-shared \
--enable-shared \
--without-cxx-main \ --without-cxx-main \
--with-threads \ --with-threads \
--with-system-ffi="$(STAGING_DIR)/usr" \ --with-system-ffi="$(STAGING_DIR)/usr" \
@ -176,7 +176,7 @@ define Build/InstallDev
$(1)/usr/include/ $(1)/usr/include/
$(CP) \ $(CP) \
$(STAGING_DIR_HOST)/lib/python$(PYTHON_VERSION) \ $(STAGING_DIR_HOST)/lib/python$(PYTHON_VERSION) \
$(PKG_BUILD_DIR)/libpython$(PYTHON_VERSION).a \
$(PKG_BUILD_DIR)/libpython$(PYTHON_VERSION).so* \
$(1)/usr/lib/ $(1)/usr/lib/
$(CP) \ $(CP) \
$(PKG_INSTALL_DIR)/usr/lib/python$(PYTHON_VERSION)/config \ $(PKG_INSTALL_DIR)/usr/lib/python$(PYTHON_VERSION)/config \
@ -389,6 +389,7 @@ endef
define PyPackage/python/install define PyPackage/python/install
$(LN) python$(PYTHON_VERSION) $(1)/usr/bin/python $(LN) python$(PYTHON_VERSION) $(1)/usr/bin/python
$(LN) python$(PYTHON_VERSION) $(1)/usr/bin/python2 $(LN) python$(PYTHON_VERSION) $(1)/usr/bin/python2
$(CP) $(PKG_BUILD_DIR)/libpython$(PYTHON_VERSION).so* $(1)/usr/lib/
endef endef
define PyPackage/python-doc/filespec define PyPackage/python-doc/filespec


Loading…
Cancel
Save