浏览代码

Added configuration item to control whether development headers and libraries are installed on the target
Removed some additional files if optional modules are disabled

Hamish Moffatt 17 年之前
父节点
当前提交
05ecb806ff
共有 2 个文件被更改,包括 28 次插入1 次删除
  1. 8 0
      package/python/Config.in
  2. 20 1
      package/python/python.mk

+ 8 - 0
package/python/Config.in

@@ -6,6 +6,14 @@ config BR2_PACKAGE_PYTHON
 
 	  http://www.python.org/
 
+config BR2_PACKAGE_PYTHON_DEV
+	depends on BR2_PACKAGE_PYTHON
+	bool "development files on target"
+	default n
+	help
+	  If enabled, development files (headers and static libpython) will be
+	  installed on the target.
+
 choice
 	prompt "Module format to install"
 	depends on BR2_PACKAGE_PYTHON

+ 20 - 1
package/python/python.mk

@@ -4,6 +4,7 @@
 #
 #############################################################
 PYTHON_VERSION=2.4.2
+PYTHON_VERSION_SHORT=2.4
 PYTHON_SOURCE:=Python-$(PYTHON_VERSION).tar.bz2
 PYTHON_SITE:=http://python.org/ftp/python/$(PYTHON_VERSION)
 PYTHON_DIR:=$(BUILD_DIR)/Python-$(PYTHON_VERSION)
@@ -136,13 +137,31 @@ endif
 	find $(TARGET_DIR)/usr/lib/ -name '*.pyo' -exec rm {} \; && \
 	rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
 		$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc \
-		$(TARGET_DIR)/usr/lib/python*/test
+		$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/test
+	cp -dpr $(TARGET_DIR)/usr/include/python$(PYTHON_VERSION_SHORT) $(STAGING_DIR)/usr/include/
+	mkdir -p $(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)
+	cp -dpr $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/config $(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/
+
 ifeq ($(BR2_PACKAGE_PYTHON_PY_ONLY),y)
 	find $(TARGET_DIR)/usr/lib/ -name '*.pyc' -exec rm {} \;
 endif
 ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y)
 	find $(TARGET_DIR)/usr/lib/ -name '*.py' -exec rm {} \;
 endif
+ifneq ($(BR2_PACKAGE_PYTHON_DEV),y)
+	rm -rf $(TARGET_DIR)/usr/include/python$(PYTHON_VERSION_SHORT)
+	rm -rf $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/config
+	find $(TARGET_DIR)/usr/lib/ -name '*.py' -exec rm {} \;
+endif
+ifneq ($(BR2_PACKAGE_PYTHON_BSDDB),y)
+	rm -rf $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/bsddb
+endif
+ifneq ($(BR2_PACKAGE_PYTHON_CURSES),y)
+	rm -rf $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/curses
+endif
+ifneq ($(BR2_PACKAGE_PYTHON_TKINTER),y)
+	rm -rf $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_SHORT)/lib-tk
+endif
 
 python: uclibc $(PYTHON_DEPS) $(TARGET_DIR)/$(PYTHON_TARGET_BINARY)