[ptxdist] Madwifi 0.9.3 rule, but needs improvement
Hello, I'd like to improve the madwifi rules and update to 0.9.3. The current state allows to compile for my platform (powerpc-be-elf) only. My questions: * How do i set the correct ATH_* varibale values for path and target architekture (see attached madwifi.make rule for details)? * How can i use make install of the madwifi Makefile. It uses the hosts strip command instead of the targets strip. Kind regards, Tom ---[madwifi.in]- config MADWIFI bool prompt Multiband Atheros WiFi Driver depends on WIRELESS help MadWifi is short for Multiband Atheros Driver for Wireless Fidelity. In other words: this project provides a Linux kernel device driver for Atheros-based Wireless LAN devices. The driver works such that your WLAN card will appear as a normal network interface in the system. Additionally there is support for the Wireless Extensions API. This allows you to configure the device using common wireless tools (ifconfig, iwconfig and friends). ---[madwifi.make]- # -*-makefile-*- # $Id: madwifi.make 2007-03-21 10:54:00 TST $ # # # Adopted to madwifi 0.9.3 # !currently it only compiles for powerpc! # !a few ugly hardcoded values remain! # PACKAGES-$(PTXCONF_MADWIFI) += madwifi # # Paths and names # MADWIFI_VERSION = 0.9.3 MADWIFI = madwifi-$(MADWIFI_VERSION) MADWIFI_SUFFIX = tar.gz MADWIFI_URL = $(PTXCONF_SETUP_SFMIRROR)/madwifi/$(MADWIFI).$(MADWIFI_SUFFIX) MADWIFI_SOURCE = $(SRCDIR)/$(MADWIFI).$(MADWIFI_SUFFIX) MADWIFI_DIR = $(BUILDDIR)/$(MADWIFI) ATH_INSTALLPATH = /lib/modules/2.6.18-mpc5200-4/kernel/net ATH_TARGET_ARCH = powerpc-be-elf # # Get # madwifi_get: $(STATEDIR)/madwifi.get $(STATEDIR)/madwifi.get: $(madwifi_get_deps_default) @$(call targetinfo, $@) @$(call touch, $@) $(MADWIFI_SOURCE): @$(call targetinfo, $@) @$(call get, MADWIFI) # # Extract # madwifi_extract: $(STATEDIR)/madwifi.extract $(STATEDIR)/madwifi.extract: $(madwifi_extract_deps_default) @$(call targetinfo, $@) @$(call clean, $(MADWIFI_DIR)) @$(call extract, MADWIFI) @$(call patchin, MADWIFI) @$(call touch, $@) # # Prepare # madwifi_prepare: $(STATEDIR)/madwifi.prepare MADWIFI_PATH= PATH=$(CROSS_PATH) MADWIFI_ENV = \ KERNELRELEASE=$(KERNEL_VERSION) \ KERNELPATH=$(KERNEL_DIR) \ DESTDIR=$(ROOTDIR) # # autoconf # MADWIFI_AUTOCONF = $(CROSS_AUTOCONF_USR) $(STATEDIR)/madwifi.prepare: $(madwifi_prepare_deps_default) @$(call targetinfo, $@) @$(call touch, $@) # # Compile # madwifi_compile: $(STATEDIR)/madwifi.compile $(STATEDIR)/madwifi.compile: $(madwifi_compile_deps_default) @$(call targetinfo, $@) cd $(MADWIFI_DIR) $(MADWIFI_ENV) $(MADWIFI_PATH) \ $(MAKE) CROSS_COMPILE=$(PTXCONF_GNU_TARGET)- TARGET=$(ATH_TARGET_ARCH) @$(call touch, $@) # # Install # madwifi_install: $(STATEDIR)/madwifi.install $(STATEDIR)/madwifi.install: $(madwifi_install_deps_default) @$(call targetinfo, $@) @$(call touch, $@) # # Target-Install # madwifi_targetinstall: $(STATEDIR)/madwifi.targetinstall # requires uudecode, which is part of sharutils $(STATEDIR)/madwifi.targetinstall: $(madwifi_targetinstall_deps_default) @$(call targetinfo, $@) @$(call install_init, madwifi) @$(call install_fixup, madwifi,PACKAGE,madwifi) @$(call install_fixup, madwifi,PRIORITY,optional) @$(call install_fixup, madwifi,VERSION,$(MADWIFI_VERSION)) @$(call install_fixup, madwifi,SECTION,base) @$(call install_fixup, madwifi,AUTHOR,(c) madwifi.org; PTXDist Integration: Tom St) @$(call install_fixup, madwifi,DEPENDS,) @$(call install_fixup, madwifi,DESCRIPTION,missing) # install all madwifi tools @$(call
[ptxdist] Haserl rules!
Hello, I'd like to suggest inclusion of Haserl into PTXDist. You can put shell scripts into /var/www of tHTTPd, mark them executable and rename them from *.sh to *.cgi (or change the -c parameter of tHTTPd init script). LUA is disabled! Details: http://haserl.sf.net Kind regards, Tom ---[haserl.in]-- config HASERL bool HASERL help Haserl is a small cgi wrapper that enables shell scripts to be embedded into html documents. It is intended for environments where something like PHP is too big. ---[haserl.make] # -*-makefile-*- # $ TST $ # # Copyright (C) 2007 by University of Illinois # # See CREDITS for details about who has contributed to this project. # # For further information about the PTXdist project and license conditions # see the README file. # # # We provide this package # PACKAGES-$(PTXCONF_HASERL) += haserl # # Paths and names # HASERL_VERSION := 0.9.16 HASERL := haserl-$(HASERL_VERSION) HASERL_SUFFIX := tar.gz HASERL_URL := $(PTXCONF_SETUP_SFMIRROR)/haserl/$(HASERL).$(HASERL_SUFFIX) HASERL_SOURCE := $(SRCDIR)/$(HASERL).$(HASERL_SUFFIX) HASERL_DIR := $(BUILDDIR)/$(HASERL) # # Get # haserl_get: $(STATEDIR)/haserl.get $(STATEDIR)/haserl.get: $(haserl_get_deps_default) @$(call targetinfo, $@) @$(call touch, $@) $(HASERL_SOURCE): @$(call targetinfo, $@) @$(call get, HASERL) # # Extract # haserl_extract: $(STATEDIR)/haserl.extract $(STATEDIR)/haserl.extract: $(haserl_extract_deps_default) @$(call targetinfo, $@) @$(call clean, $(HASERL_DIR)) @$(call extract, HASERL) @$(call touch, $@) # # Prepare # haserl_prepare: $(STATEDIR)/haserl.prepare HASERL_PATH := PATH=$(CROSS_PATH) HASERL_ENV := $(CROSS_ENV) # # autoconf # HASERL_AUTOCONF = $(CROSS_AUTOCONF_USR) $(STATEDIR)/haserl.prepare: $(haserl_prepare_deps_default) @$(call targetinfo, $@) @$(call clean, $(HASERL_DIR)/config.cache) cd $(HASERL_DIR) \ $(HASERL_PATH) $(HASERL_ENV) \ ./configure $(HASERL_AUTOCONF) @$(call touch, $@) # # Compile # haserl_compile: $(STATEDIR)/haserl.compile $(STATEDIR)/haserl.compile: $(haserl_compile_deps_default) @$(call targetinfo, $@) cd $(HASERL_DIR) $(HASERL_PATH) make @$(call touch, $@) # # Install # haserl_install: $(STATEDIR)/haserl.install $(STATEDIR)/haserl.install: $(haserl_install_deps_default) @$(call targetinfo, $@) @$(call install, HASERL) @$(call touch, $@) # # Target-Install # haserl_targetinstall: $(STATEDIR)/haserl.targetinstall $(STATEDIR)/haserl.targetinstall: $(haserl_targetinstall_deps_default) @$(call targetinfo, $@) @$(call install_init, haserl) @$(call install_fixup,haserl,PACKAGE,haserl) @$(call install_fixup,haserl,PRIORITY,optional) @$(call install_fixup,haserl,VERSION,$(HASERL_VERSION)) @$(call install_fixup,haserl,SECTION,base) @$(call install_fixup,haserl,AUTHOR,N. Angelacos; PTXDist rule: Tom St) @$(call install_fixup,haserl,DEPENDS,) @$(call install_fixup,haserl,DESCRIPTION,missing) @$(call install_copy, haserl, 0, 0, 0755, $(HASERL_DIR)/src/haserl, /usr/bin/haserl) @$(call install_finish,haserl) @$(call touch, $@) # # Clean # haserl_clean: rm -rf $(STATEDIR)/haserl.* rm -rf $(IMAGEDIR)/haserl_* rm -rf $(HASERL_DIR) # vim: syntax=make -- Feel free - 10 GB Mailbox, 100 FreeSMS/Monat ... Jetzt GMX TopMail testen: www.gmx.net/de/go/mailfooter/topmail-out -- ptxdist mailing list ptxdist@pengutronix.de
Re: [ptxdist] Hints on how to use sparse space as /config partition
Hi, The sectors seem to be locked. Try to go into U-Boot and do a 'protect off all' (don't be afraid, the U-Boot sector will be protected again after a reset). In U-Boot you can try flinfo to see if you were successful. Ok, that did the trick. The sparse partition is quite small (in total 768kB) and mounting it with jffs2 consumes already ~250kB. Where and how does uBoot store the information about locked/writeable sectors? I try to change the partition sizes and locations now. I think it is critical to keep an eye on the uBoot adresses. Any hints on that issue? Thanks so far, Tom -- Feel free - 10 GB Mailbox, 100 FreeSMS/Monat ... Jetzt GMX TopMail testen: www.gmx.net/de/go/mailfooter/topmail-out -- ptxdist mailing list ptxdist@pengutronix.de
[ptxdist] Q: looking for /etc/preinit mechanism
Hi, I want to execute some mount commands just before init gets started. This is needed to change the root filesystem just before any other service is started. For instance OpenWRT is using such a mechanism to layer the read/writable JFFS2 partition over the cramfs read-only mount. The needed modules (actually mini_fo) were successfully compiled, but this preinit is my missing link. Things i have tried so far: * created a /etc/preinit, mark it executable, do some echo This is preinit! in this file, tried it (#!/bin/sh shebang included of course) on console. * added as last statement /bin/busybox init to start regular init. * passed init=/etc/preinit as command line argument. However, this did not work (Kernel panic, init not found). Any ideas? Kind regards, Tom -- ptxdist mailing list ptxdist@pengutronix.de
Re: [ptxdist] Q: looking for /etc/preinit mechanism
Hello again, I am doing something similar by placing an initramfs into the kernel. In the initramfs I have a few klibc binaries statically compiled (dash, mount, losetup, etc., plus a few device nodes). In my /init script I call a few mount commands and then 'exec run-init /newroot /sbin/init' to chroot into the new root and run /sbin/init. Ok, should work but i think it can be done without initramfs static-bins (hopefully). I don't know why your pre-init script is not working, but I do not think it will work even if the kernel can find it. I think busybox init will need to have PID 1, so you will need to call it from a program like run-init. I tried now to delete the symlink /sbin/init with my script and partly it works: ---[exchanged /sbin/init symlink with script]- VFS: Mounted root (jffs2 filesystem). Freeing unused kernel memory: 92k init This is /sbin/init... BusyBox v1.1.3 (2007.03.20-10:05+) multi-call binary Usage: init Init is the parent of all processes. Kernel panic - not syncing: Attempted to kill init! 0Rebooting in 180 seconds.. -- But your hint with the PID==1 makes me think about overlaying the script with the new process using exec. I will check after reflashing is done... -- ptxdist mailing list ptxdist@pengutronix.de
Re: [ptxdist] Q: looking for /etc/preinit mechanism
Hello, I don't know why your pre-init script is not working, but I do not think it will work even if the kernel can find it. I think busybox init will need to have PID 1, so you will need to call it from a program like run-init. I tried now to delete the symlink /sbin/init with my script and partly it works: ... But your hint with the PID==1 makes me think about overlaying the script with the new process using exec. I will check after reflashing is done... Well, it works! ---[/sbin/init]-- #!/bin/sh echo this is /sbin/init script exec /bin/busybox init - Using exec solved my issues with PID!=1. Perhaps this may be of any help for others! Kind regards, Tom -- ptxdist mailing list ptxdist@pengutronix.de
Re: [ptxdist] Haserl rules!
Hello, Is there a reason why haserl was not included into ptxdsit 1.0.0? Kind regards, Tom -- ptxdist mailing list ptxdist@pengutronix.de
Re: [ptxdist] memory problem with my soft
PEBCAC? ;-) I had to look that up :-) -- ptxdist mailing list ptxdist@pengutronix.de