diff options
-rw-r--r-- | mk/build.mk | 6 | ||||
-rw-r--r-- | mk/vars.mk | 18 | ||||
-rw-r--r-- | package/base-files/Makefile | 9 | ||||
-rw-r--r-- | package/base-files/files/base-files.conffiles | 1 | ||||
-rw-r--r-- | package/opkg/Makefile | 4 | ||||
-rw-r--r-- | target/config/Config.in.target | 8 |
6 files changed, 40 insertions, 6 deletions
diff --git a/mk/build.mk b/mk/build.mk index 1cbc4df3d..18d347d01 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -191,6 +191,10 @@ ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) -cd ${PACKAGE_DIR} && \ ${BASH} ${ADK_TOPDIR}/scripts/ipkg-make-index.sh . >Packages endif +ifeq ($(ADK_TARGET_PACKAGE_OPKG),y) + -cd ${PACKAGE_DIR} && \ + ${BASH} ${ADK_TOPDIR}/scripts/ipkg-make-index.sh . >Packages +endif ${STAGING_TARGET_DIR} ${STAGING_TARGET_DIR}/etc ${STAGING_HOST_DIR}: @mkdir -p ${STAGING_TARGET_DIR}/{bin,etc,lib,usr/bin,usr/include,usr/lib/pkgconfig} \ @@ -201,10 +205,8 @@ ${STAGING_TARGET_DIR} ${STAGING_TARGET_DIR}/etc ${STAGING_HOST_DIR}: done ${STAGING_TARGET_DIR}/etc/ipkg.conf: ${STAGING_TARGET_DIR}/etc -ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) echo "dest root /" >${STAGING_TARGET_DIR}/etc/ipkg.conf echo "option offline_root ${TARGET_DIR}" >>$(STAGING_TARGET_DIR)/etc/ipkg.conf -endif package/%: ${STAGING_TARGET_DIR}/etc/ipkg.conf ${ADK_TOPDIR}/package/Depends.mk $(MAKE) -C package $(patsubst package/%,%,$@) diff --git a/mk/vars.mk b/mk/vars.mk index 1e69425ec..7fe962d94 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -279,7 +279,23 @@ PKG_INSTALL:= PATH='${HOST_PATH}' \ ${BASH} ${SCRIPT_DIR}/ipkg \ -force-defaults -force-depends install PKG_STATE_DIR:= $(TARGET_DIR)/usr/lib/ipkg -else +endif + +ifeq ($(ADK_TARGET_PACKAGE_OPKG),y) +PKG_BUILD:= PATH='${HOST_PATH}' \ + ${BASH} ${SCRIPT_DIR}/ipkg-build +PKG_INSTALL:= PATH='${HOST_PATH}' \ + IPKG_TMP=$(BUILD_DIR)/tmp \ + IPKG_INSTROOT=$(TARGET_DIR) \ + IPKG_CONF_DIR=$(STAGING_TARGET_DIR)/etc \ + IPKG_OFFLINE_ROOT=$(TARGET_DIR) \ + BIN_DIR=$(STAGING_HOST_DIR)/usr/bin \ + ${BASH} ${SCRIPT_DIR}/ipkg \ + -force-defaults -force-depends install +PKG_STATE_DIR:= $(TARGET_DIR)/usr/lib/opkg +endif + +ifeq ($(ADK_TARGET_PACKAGE_TXZ),y) PKG_BUILD:= PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/tarpkg build PKG_INSTALL:= PKG_INSTROOT='$(TARGET_DIR)' \ PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/tarpkg install diff --git a/package/base-files/Makefile b/package/base-files/Makefile index b447b643b..0e3c27b3e 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -35,6 +35,15 @@ ifeq (${ADK_TARGET_PACKAGE_IPKG},y) $(SED) 's,@VENDOR@,$(ADK_VENDOR),g' $(IDIR_BASE_FILES)/etc/ipkg.conf mkdir -p $(IDIR_BASE_FILES)/usr/lib/ipkg/lists endif +ifeq (${ADK_TARGET_PACKAGE_OPKG},y) + $(CP) ./files/ipkg.conf $(IDIR_BASE_FILES)/etc/ + $(SED) 's,@ARCH@,$(ADK_TARGET_CPU_ARCH),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + $(SED) 's,@SYSTEM@,$(ADK_TARGET_SYSTEM),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + $(SED) 's,@LIBC@,$(ADK_TARGET_LIBC),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + $(SED) 's,@HOST@,$(ADK_HOST),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + $(SED) 's,@VENDOR@,$(ADK_VENDOR),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + mkdir -p $(IDIR_BASE_FILES)/usr/lib/opkg/lists +endif echo /bin/sh >${IDIR_BASE_FILES}/etc/shells echo /bin/mksh >>${IDIR_BASE_FILES}/etc/shells ifneq (${ADK_PACKAGE_ASH},) diff --git a/package/base-files/files/base-files.conffiles b/package/base-files/files/base-files.conffiles index 59ed2f02b..2ee449379 100644 --- a/package/base-files/files/base-files.conffiles +++ b/package/base-files/files/base-files.conffiles @@ -4,7 +4,6 @@ /etc/group /etc/hosts /etc/hostname -/etc/ipkg.conf /etc/modules /etc/passwd /etc/profile diff --git a/package/opkg/Makefile b/package/opkg/Makefile index c2d4ad0d2..6aea87f9d 100644 --- a/package/opkg/Makefile +++ b/package/opkg/Makefile @@ -4,9 +4,9 @@ include $(ADK_TOPDIR)/rules.mk PKG_NAME:= opkg -PKG_VERSION:= 0.2.2 +PKG_VERSION:= 0.2.4 PKG_RELEASE:= 1 -PKG_HASH:= aa554ce7538544aac4f69e8274a0f9b8b433b8c3b1d00704bd393f713303a12b +PKG_HASH:= 0f40c7e457d81edf9aedc07c778f4697111ab163a38ef95999faece015453086 PKG_DESCR:= embedded package manager PKG_DEPENDS:= libcurl libpthread PKG_BUILDDEP:= curl diff --git a/target/config/Config.in.target b/target/config/Config.in.target index 9cc227d9b..5d82bb6c0 100644 --- a/target/config/Config.in.target +++ b/target/config/Config.in.target @@ -264,6 +264,7 @@ config ADK_TARGET_ROOTFS config ADK_PACKAGE_SUFFIX string default "ipk" if ADK_TARGET_PACKAGE_IPKG + default "ipk" if ADK_TARGET_PACKAGE_OPKG default "tar.xz" if ADK_TARGET_PACKAGE_TXZ help @@ -285,6 +286,13 @@ config ADK_TARGET_PACKAGE_IPKG select BUSYBOX_IPKG help Create ipkg packages and use ipkg package management on the target. + +config ADK_TARGET_PACKAGE_OPKG + boolean + prompt "opkg" + select ADK_PACKAGE_OPKG + help + Create opkg packages and use opkg package management on the target. endchoice |