Explorar el Código

fix dhcp client, when root is ro without cfgfs, simplify ipkg tmpdir stuff

Waldemar Brodkorb hace 10 años
padre
commit
abd0278a02

+ 7 - 13
package/base-files/Makefile

@@ -6,7 +6,7 @@ include $(TOPDIR)/mk/rootfs.mk
 
 PKG_NAME:=		base-files
 PKG_VERSION:=		1.0
-PKG_RELEASE:=		77
+PKG_RELEASE:=		78
 PKG_SECTION:=		base
 PKG_DESCR:=		basic files and scripts
 PKG_BUILDDEP:=		pkgconf-host file-host
@@ -56,6 +56,7 @@ endif
 	chmod 755 $(IDIR_BASE_FILES)/lib/mdev/init
 	chmod 600 $(IDIR_BASE_FILES)/etc/shadow
 	chmod 600 $(IDIR_BASE_FILES)/etc/network/interfaces
+	(cd $(IDIR_BASE_FILES)/etc; ln -sf ../tmp/resolv.conf .)
 	chmod 1777 ${IDIR_BASE_FILES}/tmp
 	ln -sf ../proc/mounts $(IDIR_BASE_FILES)/etc/mtab
 	rm -rf $(IDIR_BASE_FILES)/var
@@ -85,23 +86,20 @@ ifneq (${ADK_PACKAGE_CONFIG_IN_ETC},)
 	gzip -9c ${TOPDIR}/.config >$(IDIR_BASE_FILES)/etc/adkconfig.gz
 	chmod 600 $(IDIR_BASE_FILES)/etc/adkconfig.gz
 endif
-ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
-	echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile
-ifneq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI)$(ADK_TARGET_SYSTEM_IBM_X40)$(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),)
+ifeq ($(ADK_TARGET_WITH_ROOT_RW),y)
 	echo 'export IPKGTMPDIR=/root/.ipkg' >> $(IDIR_BASE_FILES)/etc/profile
 else
-	echo 'export IPKGTMPDIR=/tmp >> $(IDIR_BASE_FILES)/etc/profile
+	echo 'export IPKGTMPDIR=/tmp' >> $(IDIR_BASE_FILES)/etc/profile
 endif
-
+ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
+	echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile
 endif
 
 # simple network configuration
 ifneq (${ADK_SIMPLE_NETWORK_CONFIG},)
 	${INSTALL_DIR} ${IDIR_BASE_FILES}/etc/network
-
 	# network config local
 	echo -e "auto lo\niface lo inet loopback" > ${IDIR_BASE_FILES}/etc/network/interfaces
-
 	# network config eth0
 	# configure nic with dhcp
 ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC},y)
@@ -128,12 +126,10 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP},y)
 	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH0_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
 	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
 endif
-
 	# network config wlan0
 ifeq (${SIMPLE_NETWORK_CONFIG_WLAN0_TYPE_NIC},y)
 	echo -e "\nauto wlan0\niface wlan0 inet dhcp" >> ${IDIR_BASE_FILES}/etc/network/interfaces
 endif
-
 	# network config eth1
 	# configure nic with dhcp
 ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC},y)
@@ -160,13 +156,11 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP},y)
 	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH1_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
 	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
 endif
-
 	# newline at the end of interfaces file
 	echo -en "\n" >>  ${IDIR_BASE_FILES}/etc/network/interfaces
-
 	# resolver config
+	rm ${IDIR_BASE_FILES}/etc/resolv.conf
 	echo -e "nameserver ${SIMPLE_NETWORK_CONFIG_RESOLV}" > ${IDIR_BASE_FILES}/etc/resolv.conf
 endif
 
-
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 0 - 4
package/base-files/src/usr/share/udhcpc/default.script

@@ -23,16 +23,12 @@ case $1 in
 			ip route add to default via $i
 		done
 	fi
-
-	touch /tmp/resolv.conf
-	ln -sf /tmp/resolv.conf $RESOLV_CONF
 	echo -n >$RESOLV_CONF
 	${domain:+echo search $domain} >>$RESOLV_CONF
 	for i in $dns; do
 		echo "adding dns $i"
 		echo "nameserver $i" >>$RESOLV_CONF
 	done
-
 	# user rules
 	[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user
 ;;

+ 1 - 0
target/arm/sys-available/cubox-i

@@ -12,6 +12,7 @@ config ADK_TARGET_SYSTEM_CUBOX_I
 	select ADK_TARGET_WITH_USB
 	select ADK_TARGET_WITH_INPUT
 	select ADK_TARGET_KERNEL_ZIMAGE
+	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_PACKAGE_U_BOOT_CUBOX_I
 	help
 	  Cubox-i

+ 1 - 0
target/arm/sys-available/raspberry-pi

@@ -12,6 +12,7 @@ config ADK_TARGET_SYSTEM_RASPBERRY_PI
 	select ADK_TARGET_WITH_USB
 	select ADK_TARGET_WITH_INPUT
 	select ADK_PACKAGE_BCM2835_BOOTLOADER
+	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
 	  Raspberry PI

+ 1 - 0
target/mips/sys-available/lemote-yeelong

@@ -12,6 +12,7 @@ config ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	select ADK_TARGET_WITH_RTC
 	select ADK_TARGET_WITH_HDD
 	select ADK_TARGET_WITH_PCI
+	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_TARGET_KERNEL_VMLINUZ
 	help
          System profile for Lemote Yeelong laptop.

+ 1 - 0
target/x86/sys-available/ibm-x40

@@ -20,6 +20,7 @@ config ADK_TARGET_SYSTEM_IBM_X40
 	select ADK_TARGET_WITH_ACPI
 	# with docking station 
 	select ADK_TARGET_WITH_PP
+	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_TARGET_KERNEL_BZIMAGE
 	help
          System profile for IBM X40 laptop.