buildrootschalter/package/portage/portage.mk

151 lines
4.9 KiB
Makefile
Raw Normal View History

2004-10-14 22:13:24 +02:00
#############################################################
#
# portage
#
#############################################################
PORTAGE_DOWNLOAD_VERSION:=2.1.2
PORTAGE_PATCH_VERSION:=.9
PORTAGE_VERSION:=$(PORTAGE_DOWNLOAD_VERSION)$(PORTAGE_PATCH_VERSION)
PORTAGE_PATCH:=portage-$(PORTAGE_VERSION).patch.bz2
PORTAGE_SOURCE:=portage-$(PORTAGE_DOWNLOAD_VERSION).tar.bz2
2005-11-10 03:52:30 +01:00
PORTAGE_SITE:=http://gentoo.osuosl.org/distfiles
2006-11-17 16:43:51 +01:00
PORTAGE_CAT:=$(BZCAT)
2004-10-14 22:13:24 +02:00
PORTAGE_DIR:=$(BUILD_DIR)/portage-$(PORTAGE_VERSION)
PORTAGE_TARGET_DIR:=$(TARGET_DIR)/usr/lib/portage
PORTAGE_TARGET_BINARY:=usr/bin/emerge
SANDBOX_VERSION:=1.2.18.1
2005-11-10 03:52:30 +01:00
SANDBOX_SOURCE:=sandbox-$(SANDBOX_VERSION).tar.bz2
2007-07-25 19:41:15 +02:00
SANDBOX_SITE:=http://dev.gentoo.org/~azarah/sandbox/
#SANDBOX_SITE:=$(PORTAGE_SITE)
2005-11-10 03:52:30 +01:00
SANDBOX_CAT:=$(PORTAGE_CAT)
SANDBOX_DIR:=$(BUILD_DIR)/sandbox-$(SANDBOX_VERSION)
SANDBOX_TARGET_BINARY:=usr/bin/sandbox
ifeq ($(BR2_cris),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=x86
endif
ifeq ($(BR2_mipsel),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=mips
endif
ifeq ($(BR2_powerpc),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=ppc
endif
ifeq ($(BR2_sh4),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=sh
endif
ifeq ($(BR2_sh64),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=sh
endif
ifeq ($(BR2_i386),y)
2004-10-14 22:13:24 +02:00
PORTAGE_ARCH:=x86
endif
2005-08-20 08:27:12 +02:00
ifeq ($(PORTAGE_ARCH),)
PORTAGE_ARCH:=$(ARCH)
endif
2004-10-14 22:13:24 +02:00
$(DL_DIR)/$(PORTAGE_SOURCE):
2005-11-10 03:52:30 +01:00
$(WGET) -P $(DL_DIR) $(PORTAGE_SITE)/$(PORTAGE_SOURCE)
$(DL_DIR)/$(PORTAGE_PATCH):
$(WGET) -P $(DL_DIR) $(PORTAGE_SITE)/$(PORTAGE_PATCH)
2005-11-10 03:52:30 +01:00
$(DL_DIR)/$(SANDBOX_SOURCE):
$(WGET) -P $(DL_DIR) $(SANDBOX_SITE)/$(SANDBOX_SOURCE)
2004-10-14 22:13:24 +02:00
portage-source: $(DL_DIR)/$(PORTAGE_SOURCE)
2005-11-10 03:52:30 +01:00
sandbox-source: $(DL_DIR)/$(SANDBOX_SOURCE)
2004-10-14 22:13:24 +02:00
$(PORTAGE_DIR)/.unpacked: $(DL_DIR)/$(PORTAGE_SOURCE)
$(PORTAGE_CAT) $(DL_DIR)/$(PORTAGE_SOURCE) | tar -C $(BUILD_DIR) -xf -
mv -f $(BUILD_DIR)/portage-$(PORTAGE_DOWNLOAD_VERSION) $(PORTAGE_DIR)
2004-10-14 22:13:24 +02:00
rm -f $(PORTAGE_DIR)/bin/tbz2tool
touch $@
$(PORTAGE_DIR)/.patched: $(PORTAGE_DIR)/.unpacked $(DL_DIR)/$(PORTAGE_PATCH)
2007-08-22 14:35:41 +02:00
(cd $(PORTAGE_DIR); $(PORTAGE_CAT) $(DL_DIR)/$(PORTAGE_PATCH) | patch -p0)
touch $@
2005-11-10 03:52:30 +01:00
$(SANDBOX_DIR)/.unpacked: $(DL_DIR)/$(SANDBOX_SOURCE)
$(SANDBOX_CAT) $(DL_DIR)/$(SANDBOX_SOURCE) | tar -C $(BUILD_DIR) -xf -
touch $@
2004-10-14 22:13:24 +02:00
$(PORTAGE_DIR)/.compiled: $(PORTAGE_DIR)/.patched
2004-10-14 22:13:24 +02:00
$(TARGET_CC) $(TARGET_CFLAGS) $(PORTAGE_DIR)/src/tbz2tool.c -o $(PORTAGE_DIR)/src/tbz2tool
touch $@
2005-11-10 03:52:30 +01:00
$(SANDBOX_DIR)/.compiled: $(SANDBOX_DIR)/.unpacked
touch $@
2004-10-14 22:13:24 +02:00
newins=install -D
doins=install
dodir=install -d
doexe=install -D -m 755
2005-08-20 08:27:12 +02:00
dosym=ln -sf
2004-10-14 22:13:24 +02:00
$(TARGET_DIR)/$(PORTAGE_TARGET_BINARY): $(PORTAGE_DIR)/.compiled
(cd $(PORTAGE_DIR)/cnf; \
$(newins) make.globals $(TARGET_DIR)/etc/make.globals; \
$(newins) make.conf $(TARGET_DIR)/etc/make.conf; \
cp $(TARGET_DIR)/etc/make.conf $(TARGET_DIR)/etc/make.conf.$(PORTAGE_ARCH); \
patch $(TARGET_DIR)/etc/make.conf.$(PORTAGE_ARCH) $(PORTAGE_DIR)/cnf/make.conf.$(PORTAGE_ARCH).diff; \
2004-10-14 22:13:24 +02:00
$(doins) etc-update.conf dispatch-conf.conf $(TARGET_DIR)/etc; \
)
2007-08-22 14:35:41 +02:00
# $(newins) make.globals.$(PORTAGE_ARCH) $(TARGET_DIR)/etc/make.globals; \
# $(newins) make.conf.$(PORTAGE_ARCH) $(TARGET_DIR)/etc/make.conf; \
2004-10-14 22:13:24 +02:00
$(dodir) $(PORTAGE_TARGET_DIR)/pym
$(doins) $(PORTAGE_DIR)/pym/*.py $(PORTAGE_TARGET_DIR)/pym/
mkdir -p $(PORTAGE_TARGET_DIR)/pym/cache
$(doins) $(PORTAGE_DIR)/pym/cache/*.py $(PORTAGE_TARGET_DIR)/pym
mkdir -p $(PORTAGE_TARGET_DIR)/pym/elog_modules
$(doins) $(PORTAGE_DIR)/pym/elog_modules/*.py $(PORTAGE_TARGET_DIR)/pym/elog_modules
2004-10-14 22:13:24 +02:00
$(dodir) $(PORTAGE_TARGET_DIR)/bin
$(doexe) $(PORTAGE_DIR)/bin/* $(PORTAGE_DIR)/src/tbz2tool $(PORTAGE_TARGET_DIR)/bin/
2005-08-20 08:27:12 +02:00
mkdir -p $(TARGET_DIR)/usr/portage/distfiles
mkdir -p $(TARGET_DIR)/var/lib/portage
2004-10-14 22:13:24 +02:00
$(dodir) $(PORTAGE_TARGET_DIR)/usr/bin
$(dodir) $(PORTAGE_TARGET_DIR)/usr/sbin
$(dosym) newins $(PORTAGE_TARGET_DIR)/bin/donewins
for sbin in pkgmerge ebuild ebuild.sh etc-update dispatch-conf \
2007-08-22 11:56:41 +02:00
archive-conf fixpackages env-update regenworld emerge-webrsync; do \
2004-10-14 22:13:24 +02:00
$(dosym) ../lib/portage/bin/$${sbin} $(TARGET_DIR)/usr/sbin/$${sbin}; \
done
2007-08-22 11:56:41 +02:00
for bin in xpak repoman tbz2tool portageq g-cpan.pl quickpkg emerge; do \
2004-10-14 22:13:24 +02:00
$(dosym) ../lib/portage/bin/$${bin} $(TARGET_DIR)/usr/bin/$${bin}; \
done
2005-11-10 03:52:30 +01:00
$(TARGET_DIR)/$(SANDBOX_TARGET_BINARY): $(SANDBOX_DIR)/.compiled
touch $(TARGET_DIR)/$(SANDBOX_TARGET_BINARY)
2004-10-14 22:13:24 +02:00
2005-11-10 03:52:30 +01:00
sandbox: uclibc $(TARGET_DIR)/$(SANDBOX_TARGET_BINARY)
portage: sandbox python uclibc $(TARGET_DIR)/$(PORTAGE_TARGET_BINARY)
2004-10-14 22:13:24 +02:00
portage-clean:
(cd $(TARGET_DIR)/etc; \
rm -f make.globals make.conf etc-update.conf dispatch-conf.conf)
rm -rf $(PORTAGE_TARGET_DIR)
for sbin in pkgmerge ebuild ebuild.sh etc-update dispatch-conf \
2007-08-22 11:56:41 +02:00
archive-conf fixpackages env-update regenworld emerge-webrsync; do \
2004-10-14 22:13:24 +02:00
rm -f $(TARGET_DIR)/usr/sbin/$${sbin}; \
done
2007-08-22 11:56:41 +02:00
for bin in xpak repoman tbz2tool portageq g-cpan.pl quickpkg emerge; do \
2004-10-14 22:13:24 +02:00
rm -f $(TARGET_DIR)/usr/bin/$${bin}; \
done
2005-11-10 03:52:30 +01:00
sandbox-clean:
2007-08-22 14:35:41 +02:00
2004-10-14 22:13:24 +02:00
portage-dirclean:
rm -rf $(PORTAGE_DIR)
2005-11-10 03:52:30 +01:00
sandbox-dirclean:
rm -rf $(SANDBOX_DIR)
#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(strip $(BR2_PACKAGE_PORTAGE)),y)
2005-11-10 03:52:30 +01:00
TARGETS+=portage sandbox
endif