title: debian "make" error 2 when trying to install network card drivers
body: <p>I recently install Kali on my pc. because I'm using a 3rd party network card (Asus PCE-N53 to be precise) I have to install the drivers (obviously). However when I try to run the "make" command to run the installation it give me and error 127</p>
  
  <p>I am a bit of a Linux noobie so could be making a stupid mistake somwhere. If anyone has any input of any kind it would be greatly appreciated. Thank you.</p>
  
  <p>This is the error msg from the root terminal:</p>
  
  <pre><code>root@kali:/media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326#     make
  make -C tools
  make[1]: Entering directory    '/media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools'
  gcc -g bin2h.c -o bin2h
  make[1]: Leaving directory   '/media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools'
  /media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools/bin2h
  make: execvp:    /media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools/bin2h:    Permission denied
  Makefile:317: recipe for target 'build_tools' failed
  make: *** [build_tools] Error 127
  root@kali:/media/root/UUI/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326# 
  </code></pre>
  
  <p>I also copyed the file's to the /root/Desktop and tried to run from there, got this error 2:</p>
  
  <pre><code>root@kali:~/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326# make
  make -C tools
  make[1]: Entering directory '/root/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools'
  gcc -g bin2h.c -o bin2h
  make[1]: Leaving directory '/root/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools'
  /root/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/tools/bin2h
  cp -f os/linux/Makefile.6 /root/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/os/linux/Makefile
  make -C /lib/modules/4.0.0-kali1-amd64/build SUBDIRS=/root/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326/os/linux modules
  make[1]: Entering directory '/lib/modules/4.0.0-kali1-amd64/build'
  make[1]: *** No rule to make target 'modules'.  Stop.
  make[1]: Leaving directory '/lib/modules/4.0.0-kali1-amd64/build'
  Makefile:381: recipe for target 'LINUX' failed
  make: *** [LINUX] Error 2
  root@kali:~/Desktop/Linux/DPO_GPL_RT5592STA_LinuxSTA_v2.6.0.0_20120326# 
  </code></pre>
  
  <p>This is the code of the "Makefile":</p>
  
  <pre><code> ifeq ($(WIFI_MODE),)
  RT28xx_MODE = STA
  else
  RT28xx_MODE = $(WIFI_MODE)
  endif
  
  ifeq ($(TARGET),)
  TARGET = LINUX
  endif
  
  ifeq ($(CHIPSET),)
  CHIPSET = 5592
  endif
  
  MODULE = $(word 1, $(CHIPSET))
  
  #OS ABL - YES or NO
  OSABL = NO
  
  ifneq ($(TARGET),THREADX)
  #RT28xx_DIR = home directory of RT28xx source code
  RT28xx_DIR = $(shell pwd)
  endif
  
  include $(RT28xx_DIR)/os/linux/config.mk
  
  RTMP_SRC_DIR = $(RT28xx_DIR)/RT$(MODULE)
  
  #PLATFORM: Target platform
  PLATFORM = PC
  #PLATFORM = 5VT
  #PLATFORM = IKANOS_V160
  #PLATFORM = IKANOS_V180
  #PLATFORM = SIGMA
  #PLATFORM = SIGMA_8622
  #PLATFORM = INIC
  #PLATFORM = STAR
  #PLATFORM = IXP
  #PLATFORM = INF_TWINPASS
  #PLATFORM = INF_DANUBE
  #PLATFORM = INF_AR9
  #PLATFORM = INF_VR9
  #PLATFORM = BRCM_6358
  #PLATFORM = INF_AMAZON_SE
  #PLATFORM = CAVM_OCTEON
  #PLATFORM = CMPC
  #PLATFORM = RALINK_2880
  #PLATFORM = RALINK_3052
  #PLATFORM = SMDK
  #PLATFORM = RMI
  #PLATFORM = RMI_64
  #PLATFORM = KODAK_DC
  #PLATFORM = DM6446
  #PLATFORM = FREESCALE8377
  #PLATFORM = BL2348
  #PLATFORM = BL23570
  #PLATFORM = BLUBB
  #PLATFORM = BLPMP
  #PLATFORM = MT85XX
  #PLATFORM = NXP_TV550
  #PLATFORM = MVL5
  #PLATFORM = RALINK_3352
  #PLATFORM = UBICOM_IPX8
  #PLATFORM = INTELP6
  
  #APSOC
  ifeq ($(MODULE),3050)
  PLATFORM = RALINK_3050
  endif
  ifeq ($(MODULE),3052)
  PLATFORM = RALINK_3052
  endif
  ifeq ($(MODULE),3350)
  PLATFORM = RALINK_3050
  endif
  ifeq ($(MODULE),3352)
  PLATFORM = RALINK_3352
  endif
  
  
  #RELEASE Package
  RELEASE = DPO
  
  
  ifeq ($(TARGET),LINUX)
  MAKE = make
  endif
  
  ifeq ($(TARGET), UCOS)
  MAKE = make
  endif
  ifeq ($(TARGET),THREADX)
  MAKE = gmake
  endif
  
  ifeq ($(TARGET), ECOS)
  MAKE = make
  MODULE = $(shell pwd | sed "s/.*\///" ).o
  export MODULE
  endif
  
  ifeq ($(PLATFORM),5VT)
  LINUX_SRC = /home/ralink-2860-sdk-5vt-distribution/linux-2.6.17
  CROSS_COMPILE = /opt/crosstool/uClibc_v5te_le_gcc_4_1_1/bin/arm-linux-
  endif
  
  ifeq ($(PLATFORM),UBICOM_IPX8)
  LINUX_SRC = /home/sample/Customers/UBICOM/ubicom-linux-dist-2.1.1/linux-2.6.x
  CROSS_COMPILE = ubicom32-elf-
  endif
  
  ifeq ($(PLATFORM),IKANOS_V160)
  LINUX_SRC = /home/sample/projects/LX_2618_RG_5_3_00r4_SRC/linux-2.6.18
  CROSS_COMPILE = mips-linux-
  endif
  
  ifeq ($(PLATFORM),IKANOS_V180)
  LINUX_SRC = /home/sample/projects/LX_BSP_VX180_5_4_0r1_ALPHA_26DEC07/linux-2.6.18
  CROSS_COMPILE = mips-linux-
  endif
  
  ifeq ($(PLATFORM),SIGMA)
  LINUX_SRC = /root/sigma/smp86xx_kernel_source_2.7.172.0/linux-2.6.15
  CROSS_COMPILE = /root/sigma/smp86xx_toolchain_2.7.172.0/build_mipsel_nofpu/staging_dir/bin/mipsel-linux-
  endif
  
  ifeq ($(PLATFORM),SIGMA_8622)
  LINUX_SRC = /home/snowpin/armutils_2.5.120.1/build_arm/linux-2.4.22-em86xx
  CROSS_COMPILE = /home/snowpin/armutils_2.5.120.1/toolchain/bin/arm-elf-
  CROSS_COMPILE_INCLUDE = /home/snowpin/armutils_2.5.120.1/toolchain/lib/gcc-lib/arm-elf/2.95.3
  endif
  
  ifeq ($(PLATFORM),INIC)
  UCOS_SRC = /opt/uCOS/iNIC_rt2880
  CROSS_COMPILE = /usr/bin/mipsel-linux-
  endif
  
  ifeq ($(PLATFORM),STAR)
  LINUX_SRC = /opt/star/kernel/linux-2.4.27-star
  CROSS_COMPILE = /opt/star/tools/arm-linux/bin/arm-linux-
  endif
  
  ifeq ($(PLATFORM),RMI)
  LINUX_SRC = /opt/rmi/1.7.0/linux/src/
  CROSS_COMPILE = /opt/rmi/1.7.0/mipscross/nptl/bin/mips64-unknown-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),RMI_64)
  LINUX_SRC = /opt/rmi/1.7.0/linux_64/src/
  CROSS_COMPILE = /opt/rmi/1.7.0/mipscross/nptl/bin/mips64-unknown-linux-gnu-
  endif
  
  ifeq ($(PLATFORM), RALINK_2880)
  LINUX_SRC = /project/stable/RT288x/RT288x_SDK/source/linux-2.4.x
  CROSS_COMPILE = /opt/buildroot-gdb/bin/mipsel-linux-
  endif
  
  ifeq ($(PLATFORM),RALINK_3052)
  LINUX_SRC = /home/peter/ap_soc/SDK_3_3_0_0/RT288x_SDK/source/linux-2.6.21.x
  CROSS_COMPILE = /opt/buildroot-gcc342/bin/mipsel-linux-uclibc-
  endif
  
  ifeq ($(PLATFORM),FREESCALE8377)
  LINUX_SRC = /opt/ltib-mpc8377_rds-20090309/rpm/BUILD/linux-2.6.25 
  CROSS_COMPILE = /opt/freescale/usr/local/gcc-4.2.187-eglibc-2.5.187/powerpc-linux-gnu/bin/powerpc-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),BL2348)
  LINUX_SRC = /home/sample/Customers/BroadLight/bl234x-linux-2.6.21-small-v29
  CROSS_COMPILE = mips-wrs-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),BL23570)
  LINUX_SRC = /home/FIBERHOME/linux-2.6.34.8
  CROSS_COMPILE = mips-wrs-linux-gnu-mips_74k_softfp-glibc_small-
  ARCH:=mips
  export $ARCH
  endif
  
  
  ifeq ($(PLATFORM),BLUBB)
  LINUX_SRC = /home/sample/Customers/BroadLight/UBB/gmp20/linux-2.6.21-small
  CROSS_COMPILE = mips-wrs-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),BLPMP)
  LINUX_SRC = /home/sample/Customers/BroadLight/UBB/pmp16/bl234x-linux-2.6.21-small-v30.2
  CROSS_COMPILE = mips-wrs-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),PC)
  # Linux 2.6
  LINUX_SRC = /lib/modules/$(shell uname -r)/build
  # Linux 2.4 Change to your local setting
  #LINUX_SRC = /usr/src/linux-2.4
  LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/
  CROSS_COMPILE = 
  endif
  
  ifeq ($(PLATFORM),INTELP6)
  LINUX_SRC = /tftpboot/IntelCE-20.0.11052.243193/project_build_i686/IntelCE/kernel-20.0.11024.238456/linux-2.6.35
  CROSS_COMPILE = /tftpboot/IntelCE-20.0.11052.243193/build_i686/i686-linux-elf/bin/i686-cm-linux-
  endif
  
  ifeq ($(PLATFORM),IXP)
  LINUX_SRC = /project/stable/Gmtek/snapgear-uclibc/linux-2.6.x
  CROSS_COMPILE = arm-linux-
  endif
  
  ifeq ($(PLATFORM),INF_TWINPASS)
  # Linux 2.6
  #LINUX_SRC = /lib/modules/$(shell uname -r)/build
  # Linux 2.4 Change to your local setting
  LINUX_SRC = /project/stable/twinpass/release/2.0.1/source/kernel/opensource/linux-2.4.31/
  CROSS_COMPILE = mips-linux-
  endif
  
  ifeq ($(PLATFORM),INF_DANUBE)
  LINUX_SRC = /opt/danube/sdk/linux-2.6.16.x
  CROSS_COMPILE = mips-linux-
  ROOTDIR = /opt/danube/sdk
  export ROOTDIR
  endif
  
  ifeq ($(PLATFORM),INF_AR9)
  LINUX_SRC = /root/ar9/xR9_BSP1.2.2.0/source/kernel/opensource/linux-2.6.20/
  CROSS_COMPILE = /root/ar9/ifx-lxdb26-1.0.2/gcc-3.4.4/toolchain-mips/bin/
  endif
  
  ifeq ($(PLATFORM),INF_VR9)
  LINUX_SRC = /home/public/lantiq/VR9/UGW-4.2/build_dir/linux-ifxcpe_platform_vr9/linux-2.6.20.19
  CROSS_COMPILE = /home/public/lantiq/VR9/UGW-4.2/staging_dir/toolchain-mips_gcc-3.4.6_uClibc-0.9.29/bin/mips-linux-
  endif
  
  ifeq ($(PLATFORM),BRCM_6358)
  LINUX_SRC = 
  CROSS_COMPILE = 
  endif
  
  ifeq ($(PLATFORM),INF_AMAZON_SE)
  # Linux 2.6
  #LINUX_SRC = /lib/modules/$(shell uname -r)/build
  # Linux 2.4 Change to your local setting
  LINUX_SRC = /backup/ifx/3.6.2.2/source/kernel/opensource/linux-2.4.31
  #CROSS_COMPILE = mips-linux-
  #LINUX_SRC = /project/Infineon/3.6.2.2/source/kernel/opensource/linux-2.4.31
  CROSS_COMPILE = /opt/uclibc-toolchain/ifx-lxdb-1-2-3-external/gcc-3.3.6/toolchain-mips/R0208V35/mips-linux-uclibc/bin/
  endif
  
  ifeq ($(PLATFORM),ST)
  LINUX_SRC = /opt/STM/STLinux-2.2/devkit/sources/kernel/linux0039
  CROSS_COMPILE = /opt/STM/STLinux-2.2/devkit/sh4/bin/sh4-linux-
  ARCH := sh
  export ARCH
  endif
  
  ifeq ($(PLATFORM),CAVM_OCTEON)
  OCTEON_ROOT = /usr/local/Cavium_Networks/OCTEON-SDK
  LINUX_SRC = $(OCTEON_ROOT)/linux/kernel_2.6/linux
  CROSS_COMPILE = mips64-octeon-linux-gnu-
  endif
  
  ifeq ($(PLATFORM),CMPC)
  LINUX_SRC = /opt/fvt_11N_SDK_0807/fvt131x_SDK_11n/linux-2.6.17
  CROSS_COMPILE =
  endif
  
  ifeq ($(PLATFORM),SMDK)
  LINUX_SRC = /home/bhushan/itcenter/may28/linux-2.6-samsung
  CROSS_COMPILE = /usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-
  endif
  
  ifeq ($(PLATFORM),RALINK_3352)
  LINUX_SRC = /home/sample/3352/RT288x_SDK/source/linux-2.6.21.x
  CROSS_COMPILE = /opt/buildroot-gcc342/bin/mipsel-linux-
  endif
  
  ifeq ($(PLATFORM),KODAK_DC)
  SKD_SRC = C:/SigmaTel/DC1250_SDK_v1-9/sdk
  CROSS_COMPILE = $(cc)
  endif
  
  ifeq ($(PLATFORM),DM6446)
  LINUX_SRC = /home/fonchi/work/soc/ti-davinci
  endif
  
  ifeq ($(PLATFORM),MT85XX)
  LINUX_SRC = /home/john/MTK/BDP_Linux/linux-2.6.27
  CROSS_COMPILE = armv6z-mediatek-linux-gnueabi-
  endif
  
  ifeq ($(PLATFORM),NXP_TV550) 
  LINUX_SRC = /data/tv550/kernel/linux-2.6.28.9
  LINUX_SRC_MODULE = /data/tv550/kernel/linux-2.6.28.9/drivers/net/wireless
  CROSS_COMPILE = /opt/embeddedalley/nxp_tv550/bin/mipsel-linux-
  endif
  
  ifeq ($(PLATFORM),MVL5)
  LINUX_SRC = /home2/charlestu/AP-VT3426/linux-2.6.18
  CROSS_COMPILE = /opt/montavista/pro/devkit/arm/v5t_le_mvl5/bin/arm_v5t_le-
  endif
  
  export OSABL RT28xx_DIR RT28xx_MODE LINUX_SRC CROSS_COMPILE CROSS_COMPILE_INCLUDE PLATFORM RELEASE CHIPSET MODULE RTMP_SRC_DIR LINUX_SRC_MODULE TARGET HAS_WOW_SUPPORT
  
  # The targets that may be used.
  PHONY += all build_tools test UCOS THREADX LINUX release prerelease clean uninstall install libwapi osabl
  
  ifeq ($(TARGET),LINUX)
  all: build_tools $(TARGET)
  else
  all: $(TARGET)
  endif 
  
  
  
  build_tools:
      $(MAKE) -C tools
      $(RT28xx_DIR)/tools/bin2h
  
  test:
      $(MAKE) -C tools test
  
  UCOS:
      $(MAKE) -C os/ucos/ MODE=$(RT28xx_MODE)
      echo $(RT28xx_MODE)
  
  ECOS:
      $(MAKE) -C os/ecos/ MODE=$(RT28xx_MODE)
      cp -f os/ecos/$(MODULE) $(MODULE)
  
  THREADX:
      $(MAKE) -C $(RT28xx_DIR)/os/Threadx -f $(RT28xx_DIR)/os/ThreadX/Makefile
  
  LINUX:
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
  
  ifeq ($(OSABL),YES)
      cp -f os/linux/Makefile.4.util $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  endif
  
      cp -f os/linux/Makefile.4 $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  
  ifeq ($(OSABL),YES)
      cp -f os/linux/Makefile.4.netif $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  endif
  
  ifeq ($(RT28xx_MODE),AP)
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)ap.o /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)ap.o /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)ap.o /tftpboot
  endif
  ifeq ($(PLATFORM),INF_AMAZON_SE)
      cp -f /tftpboot/rt2870ap.o /backup/ifx/build/root_filesystem/lib/modules/2.4.31-Amazon_SE-3.6.2.2-R0416_Ralink/kernel/drivers/net
  endif
  else    
  ifeq ($(RT28xx_MODE),APSTA)
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)apsta.o /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)apsta.o /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)apsta.o /tftpboot
  endif
  else
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)sta.o /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)sta.o /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)sta.o /tftpboot
  endif
  endif   
  endif   
  else
  
  ifeq ($(OSABL),YES)
      cp -f os/linux/Makefile.6.util $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  
      cp -f os/linux/Makefile.6 $(RT28xx_DIR)/os/linux/Makefile
  ifeq ($(PLATFORM),DM6446)
      $(MAKE)  ARCH=arm CROSS_COMPILE=arm_v5t_le- -C  $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  else
  ifeq ($(PLATFORM),FREESCALE8377)
      $(MAKE) ARCH=powerpc CROSS_COMPILE=$(CROSS_COMPILE) -C  $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  else
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  endif
  
  ifeq ($(OSABL),YES)
      cp -f os/linux/Makefile.6.netif $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  
  ifeq ($(RT28xx_MODE),AP)
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)ap.ko /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)ap.ko /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)ap.ko /tftpboot
  endif
      rm -f os/linux/rt$(MODULE)ap.ko.lzma
      /root/bin/lzma e os/linux/rt$(MODULE)ap.ko os/linux/rt$(MODULE)ap.ko.lzma
  else    
  ifeq ($(RT28xx_MODE),APSTA)
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)apsta.ko /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)apsta.ko /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)apsta.ko /tftpboot
  endif
  else
      cp -f $(RT28xx_DIR)/os/linux/rt$(MODULE)sta.ko /tftpboot
  ifeq ($(OSABL),YES)
      cp -f $(RT28xx_DIR)/os/linux/rtutil$(MODULE)sta.ko /tftpboot
      cp -f $(RT28xx_DIR)/os/linux/rtnet$(MODULE)sta.ko /tftpboot
  endif
  endif
  endif
  endif
  
  
  release: build_tools
      $(MAKE) -C $(RT28xx_DIR)/striptool -f Makefile.release clean
      $(MAKE) -C $(RT28xx_DIR)/striptool -f Makefile.release
      striptool/striptool.out
  ifeq ($(RELEASE), DPO)
      gcc -o striptool/banner striptool/banner.c
      ./striptool/banner -b striptool/copyright.gpl -s DPO/ -d DPO_GPL -R
      ./striptool/banner -b striptool/copyright.frm -s DPO_GPL/include/firmware.h
  endif
  
  prerelease:
  ifeq ($(MODULE), 2880)
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.release.2880 prerelease
  else
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.release prerelease
  endif
      cp $(RT28xx_DIR)/os/linux/Makefile.DPB $(RTMP_SRC_DIR)/os/linux/.
      cp $(RT28xx_DIR)/os/linux/Makefile.DPA $(RTMP_SRC_DIR)/os/linux/.
      cp $(RT28xx_DIR)/os/linux/Makefile.DPC $(RTMP_SRC_DIR)/os/linux/.
  ifeq ($(RT28xx_MODE),STA)
      cp $(RT28xx_DIR)/os/linux/Makefile.DPD $(RTMP_SRC_DIR)/os/linux/.
      cp $(RT28xx_DIR)/os/linux/Makefile.DPO $(RTMP_SRC_DIR)/os/linux/.
  endif   
  
  clean:
  ifeq ($(TARGET), LINUX)
      cp -f os/linux/Makefile.clean os/linux/Makefile
      $(MAKE) -C os/linux clean
      rm -rf os/linux/Makefile
  endif   
  ifeq ($(TARGET), UCOS)
      $(MAKE) -C os/ucos clean MODE=$(RT28xx_MODE)
  endif
  ifeq ($(TARGET), ECOS)
      $(MAKE) -C os/ecos clean MODE=$(RT28xx_MODE)
  endif
  
  uninstall:
  ifeq ($(TARGET), LINUX)
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.4 uninstall
  else
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.6 uninstall
  endif
  endif
  
  install:
  ifeq ($(TARGET), LINUX)
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.4 install
  else
      $(MAKE) -C $(RT28xx_DIR)/os/linux -f Makefile.6 install
  endif
  endif
  
  libwapi:
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      cp -f os/linux/Makefile.libwapi.4 $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  else
      cp -f os/linux/Makefile.libwapi.6 $(RT28xx_DIR)/os/linux/Makefile   
      $(MAKE) -C  $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules 
  endif   
  
  osutil:
  ifeq ($(OSABL),YES)
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      cp -f os/linux/Makefile.4.util $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  else
      cp -f os/linux/Makefile.6.util $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  endif
  
  osnet:
  ifeq ($(OSABL),YES)
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      cp -f os/linux/Makefile.4.netif $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  else
      cp -f os/linux/Makefile.6.netif $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  endif
  
  osdrv:
  ifneq (,$(findstring 2.4,$(LINUX_SRC)))
      cp -f os/linux/Makefile.4 $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(RT28xx_DIR)/os/linux/
  else
      cp -f os/linux/Makefile.6 $(RT28xx_DIR)/os/linux/Makefile
      $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
  endif
  
  # Declare the contents of the .PHONY variable as phony.  We keep that information in a variable
  .PHONY: $(PHONY)
  </code></pre>