Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 1 | ############################################################# |
| 2 | # |
| 3 | # pcmcia card services |
| 4 | # |
| 5 | ############################################################# |
| 6 | # Copyright (C) 2001-2003 by Erik Andersen <andersen@codepoet.org> |
| 7 | # Copyright (C) 2002 by Tim Riker <Tim@Rikers.org> |
| 8 | # |
| 9 | # This program is free software; you can redistribute it and/or modify |
| 10 | # it under the terms of the GNU Library General Public License as |
| 11 | # published by the Free Software Foundation; either version 2 of the |
| 12 | # License, or (at your option) any later version. |
| 13 | # |
| 14 | # This program is distributed in the hope that it will be useful, but |
| 15 | # WITHOUT ANY WARRANTY; without even the implied warranty of |
| 16 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 17 | # Library General Public License for more details. |
| 18 | # |
| 19 | # You should have received a copy of the GNU Library General Public |
| 20 | # License along with this program; if not, write to the Free Software |
| 21 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 |
| 22 | # USA |
| 23 | |
Eric Andersen | 60f17fa | 2003-12-20 00:01:42 +0000 | [diff] [blame] | 24 | PCMCIA_SOURCE:=pcmcia-cs-3.2.7.tar.gz |
Eric Andersen | 1d63e8a | 2005-06-09 12:15:00 +0000 | [diff] [blame] | 25 | PCMCIA_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/pcmcia-cs |
Eric Andersen | 60f17fa | 2003-12-20 00:01:42 +0000 | [diff] [blame] | 26 | PCMCIA_DIR:=$(BUILD_DIR)/pcmcia-cs-3.2.7 |
Bernhard Reutner-Fischer | 6342c83 | 2006-10-01 15:17:52 +0000 | [diff] [blame] | 27 | PCMCIA_CAT:=$(ZCAT) |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 28 | |
| 29 | $(DL_DIR)/$(PCMCIA_SOURCE): |
Peter Korsgaard | 4a7bfd2 | 2009-01-16 11:42:52 +0000 | [diff] [blame] | 30 | $(call DOWNLOAD,$(PCMCIA_SITE),$(PCMCIA_SOURCE)) |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 31 | |
| 32 | pcmcia-source: $(DL_DIR)/$(PCMCIA_SOURCE) |
| 33 | |
| 34 | $(PCMCIA_DIR)/.unpacked: $(DL_DIR)/$(PCMCIA_SOURCE) |
Eric Andersen | bb05a9a | 2004-10-09 21:19:47 +0000 | [diff] [blame] | 35 | $(PCMCIA_CAT) $(DL_DIR)/$(PCMCIA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 36 | touch $(PCMCIA_DIR)/.unpacked |
| 37 | |
| 38 | $(PCMCIA_DIR)/.patched: $(PCMCIA_DIR)/.unpacked |
Eric Andersen | 44eedc5 | 2004-10-09 02:49:33 +0000 | [diff] [blame] | 39 | toolchain/patch-kernel.sh $(PCMCIA_DIR) package/pcmcia/ pcmcia\*.patch |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 40 | touch $(PCMCIA_DIR)/.patched |
| 41 | |
| 42 | $(PCMCIA_DIR)/.configured: $(PCMCIA_DIR)/.patched |
Bernhard Reutner-Fischer | 956d3eb | 2007-08-22 09:56:41 +0000 | [diff] [blame] | 43 | ( cd $(PCMCIA_DIR); ./Configure --kernel=$(LINUX26_DIR) --noprompt \ |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 44 | --rcdir=/etc --arch=$(ARCH) --trust --srctree --nocardbus \ |
Eric Andersen | 2e312fa | 2003-06-05 02:35:46 +0000 | [diff] [blame] | 45 | --sysv --kcc=$(KERNEL_CROSS)gcc --ucc=$(TARGET_CC) --ld=$(TARGET_CROSS)ld \ |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 46 | --target=$(TARGET_DIR)) |
Eric Andersen | 4f889ad | 2003-11-19 17:17:56 +0000 | [diff] [blame] | 47 | $(SED) "s/pump/udhcpc/" $(PCMCIA_DIR)/etc/network |
| 48 | $(SED) "s/ide_cs/ide-cs/" $(PCMCIA_DIR)/etc/config |
| 49 | $(SED) "s/bind \"wvlan_cs\"/bind \"orinoco_cs\"/g" $(PCMCIA_DIR)/etc/config |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 50 | touch $(PCMCIA_DIR)/.configured |
| 51 | |
| 52 | $(PCMCIA_DIR)/cardmgr/cardmgr: $(PCMCIA_DIR)/.configured |
| 53 | $(MAKE) -C $(PCMCIA_DIR) -i all |
Bernhard Reutner-Fischer | 956d3eb | 2007-08-22 09:56:41 +0000 | [diff] [blame] | 54 | -A=`find $(PCMCIA_DIR) -type f -perm +111`; \ |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 55 | for fo in $$A; do \ |
| 56 | file $$fo | grep "ELF" | grep "executable" > /dev/null 2>&1; \ |
Bernhard Reutner-Fischer | 956d3eb | 2007-08-22 09:56:41 +0000 | [diff] [blame] | 57 | if [ $$? = 0 ]; then \ |
Bernhard Reutner-Fischer | 14a7156 | 2007-10-01 16:15:31 +0000 | [diff] [blame] | 58 | $(STRIPCMD) $$fo; \ |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 59 | fi; \ |
| 60 | done |
| 61 | touch -c $(PCMCIA_DIR)/cardmgr/cardmgr |
| 62 | |
| 63 | $(TARGET_DIR)/sbin/cardmgr: $(PCMCIA_DIR)/cardmgr/cardmgr |
Bernhard Reutner-Fischer | 6c6cb06 | 2007-08-21 19:20:18 +0000 | [diff] [blame] | 64 | rm -rf $(TARGET_DIR)/etc/pcmcia |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 65 | $(MAKE) -i -C $(PCMCIA_DIR) install |
Bernhard Reutner-Fischer | 6c6cb06 | 2007-08-21 19:20:18 +0000 | [diff] [blame] | 66 | rm -rf $(TARGET_DIR)/usr/man |
| 67 | rm -rf $(TARGET_DIR)/usr/share/man |
| 68 | rm -rf $(TARGET_DIR)/usr/X11R6/man |
| 69 | rm -rf $(TARGET_DIR)/etc/rc.d |
| 70 | rm -rf $(TARGET_DIR)/etc/rc?.d |
| 71 | rm -f $(TARGET_DIR)/etc/init.d/pcmcia* |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 72 | rm -f $(TARGET_DIR)/sbin/dump_cis $(TARGET_DIR)/sbin/pack_cis |
Bernhard Reutner-Fischer | 6c6cb06 | 2007-08-21 19:20:18 +0000 | [diff] [blame] | 73 | rm -f $(TARGET_DIR)/usr/share/pnp.ids $(TARGET_DIR)/sbin/lspnp $(TARGET_DIR)/sbin/setpnp |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 74 | rm -f $(TARGET_DIR)/sbin/pcinitrd |
| 75 | rm -f $(TARGET_DIR)/sbin/probe |
Eric Andersen | ef9d12c | 2003-06-04 20:47:18 +0000 | [diff] [blame] | 76 | rm -f $(TARGET_DIR)/sbin/ide_info |
| 77 | rm -f $(TARGET_DIR)/sbin/scsi_info |
| 78 | rm -f $(TARGET_DIR)/sbin/ftl_check |
| 79 | rm -f $(TARGET_DIR)/sbin/ftl_format |
| 80 | rm -f $(TARGET_DIR)/usr/X11R6/bin/xcardinfo |
| 81 | rm -rf $(TARGET_DIR)/etc/sysconfig |
Eric Andersen | 5d5cef0 | 2003-06-10 03:02:26 +0000 | [diff] [blame] | 82 | mkdir -p $(TARGET_DIR)/etc/default |
Eric Andersen | add0cec | 2003-06-09 18:28:53 +0000 | [diff] [blame] | 83 | cp -f $(PCMCIA_DIR)/etc/pcmcia $(TARGET_DIR)/etc/default/ |
Eric Andersen | fedfb7d | 2003-06-05 17:57:27 +0000 | [diff] [blame] | 84 | cp -f $(PCMCIA_DIR)/etc/rc.pcmcia $(TARGET_DIR)/etc/init.d/S30pcmcia |
Eric Andersen | ef9d12c | 2003-06-04 20:47:18 +0000 | [diff] [blame] | 85 | rm -rf $(TARGET_DIR)/etc/pcmcia/cis |
Eric Andersen | 39eb7da | 2003-02-04 10:35:13 +0000 | [diff] [blame] | 86 | chmod a+x $(TARGET_DIR)/etc/init.d/S30pcmcia |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 87 | chmod -R u+w $(TARGET_DIR)/etc/pcmcia/* |
| 88 | |
Eric Andersen | 12c383b | 2003-06-20 12:15:27 +0000 | [diff] [blame] | 89 | # use busybox depmod.pl so we need the sources unpacked |
| 90 | $(PCMCIA_DIR)/.modules.dep: $(BUSYBOX_DIR)/.configured $(TARGET_DIR)/lib/modules |
Ulf Samuelsson | cc4cb29 | 2007-07-24 14:10:03 +0000 | [diff] [blame] | 91 | [ -d $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION) ] && \ |
Eric Andersen | 12c383b | 2003-06-20 12:15:27 +0000 | [diff] [blame] | 92 | $(BUSYBOX_DIR)/examples/depmod.pl \ |
Ulf Samuelsson | cc4cb29 | 2007-07-24 14:10:03 +0000 | [diff] [blame] | 93 | -b $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/ \ |
| 94 | -F $(LINUX26_DIR)/System.map \ |
| 95 | > $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep |
Eric Andersen | 12c383b | 2003-06-20 12:15:27 +0000 | [diff] [blame] | 96 | touch $(PCMCIA_DIR)/.modules.dep |
| 97 | |
Will Newton | 422ce65 | 2009-09-02 16:02:02 +0100 | [diff] [blame^] | 98 | pcmcia: linux26 $(TARGET_DIR)/sbin/cardmgr $(PCMCIA_DIR)/.modules.dep |
Eric Andersen | 7129da0 | 2003-01-18 21:27:22 +0000 | [diff] [blame] | 99 | |
| 100 | pcmcia-clean: |
| 101 | rm -f $(TARGET_DIR)/sbin/cardmgr |
| 102 | -$(MAKE) -C $(PCMCIA_DIR) clean |
| 103 | rm -f $(PCMCIA_DIR)/.configured $(PCMCIA_DIR)/config.out |
| 104 | |
| 105 | pcmcia-dirclean: |
| 106 | rm -rf $(PCMCIA_DIR) |
Eric Andersen | d06645d | 2005-02-10 03:06:39 +0000 | [diff] [blame] | 107 | ############################################################# |
| 108 | # |
| 109 | # Toplevel Makefile options |
| 110 | # |
| 111 | ############################################################# |
Peter Korsgaard | ac1d92c | 2008-12-08 08:15:27 +0000 | [diff] [blame] | 112 | ifeq ($(BR2_PACKAGE_PCMCIA),y) |
Eric Andersen | d06645d | 2005-02-10 03:06:39 +0000 | [diff] [blame] | 113 | TARGETS+=pcmcia |
| 114 | endif |