# Main makefile for the packages include $(TOPDIR)/rules.mk include $(TOPDIR)/mk/pkg-depend.mk package-$(FWRT_PACKAGE_6TUNNEL) += 6tunnel package-$(FWRT_PACKAGE_AICCU) += aiccu package-$(FWRT_PACKAGE_AIRCRACK_NG) += aircrack-ng package-$(FWRT_PACKAGE_ARPD) += arpd package-$(FWRT_PACKAGE_ARPTABLES) += arptables package-$(FWRT_PACKAGE_ARPWATCH) += arpwatch package-$(FWRT_PACKAGE_ASTERISK) += asterisk package-$(FWRT_COMPILE_ATFTP) += atftp package-$(FWRT_PACKAGE_AUTOSSH) += autossh package-$(FWRT_COMPILE_AVAHI) += avahi package-$(FWRT_COMPILE_AXTLS) += axtls package-$(FWRT_PACKAGE_B43_FIRMWARE) += b43-firmware package-$(FWRT_COMPILE_BC) += bc package-$(FWRT_COMPILE_BIND) += bind package-$(FWRT_PACKAGE_BITCHX) += bitchx package-$(FWRT_PACKAGE_BITLBEE) += bitlbee package-$(FWRT_PACKAGE_BLUEZ_FIRMWARE) += bluez-firmware package-$(FWRT_PACKAGE_BLUEZ_LIBS) += bluez-libs package-$(FWRT_PACKAGE_BLUEZ_UTILS) += bluez-utils package-$(FWRT_PACKAGE_BRIDGE_UTILS) += bridge-utils package-$(FWRT_PACKAGE_BROADCOM_NAS) += broadcom-nas package-$(FWRT_PACKAGE_BROADCOM_WATCHBUTTON) += broadcom-watchbutton package-$(FWRT_PACKAGE_BROADCOM_WL_UTIL) += broadcom-wl-util package-$(FWRT_PACKAGE_BUSYBOX) += busybox package-$(FWRT_PACKAGE_BWM) += bwm package-$(FWRT_PACKAGE_CBTT) += cbtt package-$(FWRT_PACKAGE_CGILIB) += cgilib package-$(FWRT_PACKAGE_CHILLISPOT) += chillispot package-$(FWRT_PACKAGE_CIFSMOUNT) += cifsmount package-$(FWRT_PACKAGE_CLICK) += click package-$(FWRT_PACKAGE_CLINKC) += clinkc package-$(FWRT_PACKAGE_COLLECTD) += collectd package-$(FWRT_PACKAGE_COMGT) += comgt package-$(FWRT_PACKAGE_CTORRENT) += ctorrent package-$(FWRT_PACKAGE_CUPS) += cups package-$(FWRT_COMPILE_CURL) += curl package-$(FWRT_PACKAGE_CUTTER) += cutter package-$(FWRT_COMPILE_CYRUS_SASL) += cyrus-sasl package-$(FWRT_PACKAGE_DAEMONTOOLS) += daemontools package-$(FWRT_PACKAGE_DECO) += deco package-$(FWRT_COMPILE_DHCP) += dhcp package-$(FWRT_PACKAGE_DHCP_FORWARDER) += dhcp-forwarder package-$(FWRT_PACKAGE_DHCP6) += dhcp6 package-$(FWRT_PACKAGE_DIGITEMP) += digitemp package-$(FWRT_PACKAGE_DJBDNS) += djbdns package-$(FWRT_PACKAGE_DNSMASQ) += dnsmasq package-$(FWRT_PACKAGE_DOSFSTOOLS) += dosfstools package-$(FWRT_PACKAGE_DROPBEAR) += dropbear package-$(FWRT_PACKAGE_DSNIFF) += dsniff package-$(FWRT_PACKAGE_E2FSPROGS) += e2fsprogs package-$(FWRT_PACKAGE_EBTABLES) += ebtables package-$(FWRT_PACKAGE_ED) += ed package-$(FWRT_PACKAGE_ELINKS) += elinks package-$(FWRT_PACKAGE_ESOUND) += esound package-$(FWRT_PACKAGE_ETHER_WAKE) += ether-wake package-$(FWRT_PACKAGE_ETHTOOL) += ethtool package-$(FWRT_COMPILE_EXPAT) += expat package-$(FWRT_PACKAGE_EZIPUPDATE) += ez-ipupdate package-$(FWRT_PACKAGE_EVTEST) += evtest package-$(FWRT_PACKAGE_FAKEIDENTD) += fakeidentd package-$(FWRT_PACKAGE_FETCHMAIL) += fetchmail package-$(FWRT_COMPILE_FLAC) += flac package-$(FWRT_PACKAGE_FPING) += fping package-$(FWRT_PACKAGE_FPROBE) += fprobe package-$(FWRT_PACKAGE_FPROBE_ULOG) += fprobe-ulog package-$(FWRT_PACKAGE_FREERADIUS) += freeradius package-$(FWRT_COMPILE_FREETYPE) += freetype package-$(FWRT_PACKAGE_FRICKIN) += frickin package-$(FWRT_COMPILE_FUSE) += fuse package-$(FWRT_PACKAGE_FWCF) += fwcf package-$(FWRT_PACKAGE_FWRTC) += fwrtc package-$(FWRT_PACKAGE_GDBSERVER) += gdbserver package-$(FWRT_COMPILE_GLIB) += glib package-$(FWRT_PACKAGE_GMEDIASERVER) += gmediaserver package-$(FWRT_COMPILE_GMP) += gmp package-$(FWRT_COMPILE_GNUTLS) += gnutls package-$(FWRT_PACKAGE_GPG) += gpg package-$(FWRT_PACKAGE_GPSD) += gpsd package-$(FWRT_COMPILE_GSM) += gsm package-$(FWRT_PACKAGE_HASERL) += haserl package-$(FWRT_PACKAGE_HDPARM) += hdparm package-$(FWRT_PACKAGE_HEYU) += heyu package-$(FWRT_PACKAGE_HOSTAP_UTILS) += hostap-utils package-$(FWRT_COMPILE_HOSTAPD) += hostapd package-$(FWRT_COMPILE_HOWL) += howl package-$(FWRT_PACKAGE_HTPDATE) += htpdate package-$(FWRT_PACKAGE_HTTPING) += httping package-$(FWRT_PACKAGE_HTTPTUNNEL) += httptunnel package-$(FWRT_PACKAGE_ICECAST) += icecast package-$(FWRT_PACKAGE_ID3LIB) += id3lib package-$(FWRT_PACKAGE_IFTOP) += iftop package-$(FWRT_PACKAGE_IGMPPROXY) += igmpproxy package-$(FWRT_PACKAGE_IPCAD) += ipcad package-$(FWRT_PACKAGE_IPERF) += iperf package-$(FWRT_COMPILE_IPROUTE2) += iproute2 package-$(FWRT_PACKAGE_IPSET) += ipset package-$(FWRT_COMPILE_IPTABLES) += iptables package-$(FWRT_PACKAGE_IPTABLES_SNMP) += iptables-snmp package-$(FWRT_PACKAGE_IPTRAF) += iptraf package-$(FWRT_PACKAGE_IRSSI) += irssi package-$(FWRT_PACKAGE_IW) += iw package-$(FWRT_PACKAGE_JAMVM) += jamvm package-$(FWRT_PACKAGE_JFFS2ROOT) += jffs2root package-$(FWRT_PACKAGE_JOE) += joe package-$(FWRT_COMPILE_JPEG) += jpeg package-$(FWRT_COMPILE_KISMET) += kismet package-$(FWRT_COMPILE_KNOCK) += knock package-$(FWRT_PACKAGE_L2TPD) += l2tpd package-$(FWRT_PACKAGE_L2TPNS) += l2tpns package-$(FWRT_PACKAGE_LCD4LINUX) += lcd4linux package-$(FWRT_PACKAGE_LESS) += less package-$(FWRT_PACKAGE_LIBAO) += libao package-$(FWRT_PACKAGE_LIBART) += libart package-$(FWRT_PACKAGE_LIBAUDIOFILE) += libaudiofile package-$(FWRT_PACKAGE_LIBCLI) += libcli package-$(FWRT_PACKAGE_LIBDAEMON) += libdaemon package-$(FWRT_COMPILE_DB) += libdb package-$(FWRT_PACKAGE_LIBDNET) += libdnet package-$(FWRT_PACKAGE_LIBELF) += libelf package-$(FWRT_PACKAGE_LIBEVENT) += libevent package-$(FWRT_PACKAGE_LIBFFI_SABLE) += libffi-sable package-$(FWRT_PACKAGE_LIBGCRYPT) += libgcrypt package-$(FWRT_PACKAGE_LIBGD) += libgd package-$(FWRT_PACKAGE_LIBGDBM) += libgdbm package-$(FWRT_PACKAGE_LIBGPG_ERROR) += libgpg-error package-$(FWRT_PACKAGE_LIBICONV) += libiconv package-$(FWRT_PACKAGE_LIBID3TAG) += libid3tag package-$(FWRT_PACKAGE_LIBLZO) += liblzo package-$(FWRT_PACKAGE_LIBMAD) += libmad package-$(FWRT_PACKAGE_LIBNET) += libnet package-$(FWRT_PACKAGE_LIBNIDS) += libnids package-$(FWRT_PACKAGE_LIBNL) += libnl package-$(FWRT_PACKAGE_LIBOGG) += libogg package-$(FWRT_PACAKGE_LIBOL) += libol package-$(FWRT_PACKAGE_LIBOSIP2) += libosip2 package-$(FWRT_PACKAGE_LIBPCAP) += libpcap package-$(FWRT_PACKAGE_LIBPNG) += libpng package-$(FWRT_PACKAGE_LIBPTHREAD) += libpthread package-$(FWRT_PACKAGE_LIBTASN1) += libtasn1 package-$(FWRT_COMPILE_LIBTOOL) += libtool package-$(FWRT_PACKAGE_LIBUPNP) += libupnp package-$(FWRT_PACKAGE_LIBUSB) += libusb package-$(FWRT_PACKAGE_LIBVORBIS) += libvorbis package-$(FWRT_PACKAGE_LIBVORBISIDEC) += libvorbisidec package-$(FWRT_PACKAGE_LIBXML2) += libxml2 package-$(FWRT_PACKAGE_LIBXSLT) += libxslt package-$(FWRT_PACKAGE_LIGHTTPD) += lighttpd package-$(FWRT_PACKAGE_LINUX_ATM) += linux-atm package-$(FWRT_PACKAGE_LOGROTATE) += logrotate package-$(FWRT_PACKAGE_LRZSZ) += lrzsz package-$(FWRT_COMPILE_LUA) += lua package-$(FWRT_PACKAGE_MACCHANGER) += macchanger package-$(FWRT_PACKAGE_MADPLAY) += madplay package-$(FWRT_PACKAGE_MARADNS) += maradns package-$(FWRT_COMPILE_MATRIXSSL) += matrixssl package-$(FWRT_PACKAGE_MATRIXTUNNEL) += matrixtunnel package-$(FWRT_PACKAGE_MGETTY) += mgetty package-$(FWRT_PACKAGE_MIAU) += miau package-$(FWRT_PACKAGE_MIAX) += miax package-$(FWRT_PACKAGE_MICROCOM) += microcom package-$(FWRT_PACKAGE_MICROPERL) += microperl package-$(FWRT_COMPILE_MINI_HTTPD) += mini_httpd package-$(FWRT_PACKAGE_MINI_SENDMAIL) += mini_sendmail package-$(FWRT_COMPILE_MIREDO) += miredo package-$(FWRT_PACKAGE_MKSH) += mksh package-$(FWRT_COMPILE_MONIT) += monit package-$(FWRT_PACKAGE_MOTION) += motion package-$(FWRT_PACKAGE_MPD) += mpd package-$(FWRT_PACKAGE_MRD6) += mrd6 package-$(FWRT_PACKAGE_MT_DAAPD) += mt-daapd package-$(FWRT_PACKAGE_MTD) += mtd package-$(FWRT_PACKAGE_MTR) += mtr package-$(FWRT_PACKAGE_MUTT) += mutt package-$(FWRT_COMPILE_MYSQL) += mysql package-$(FWRT_PACKAGE_NANO) += nano package-$(FWRT_COMPILE_NCURSES) += ncurses package-$(FWRT_PACKAGE_LIBNCURSES) += ncurses package-$(FWRT_COMPILE_NDISC6) += ndisc package-$(FWRT_COMPILE_NET_SNMP) += net-snmp package-$(FWRT_PACKAGE_NETPERF) += netperf package-$(FWRT_PACKAGE_NETSTAT_NAT) += netstat-nat package-$(FWRT_PACKAGE_NFS_SERVER) += nfs-server package-$(FWRT_PACKAGE_NFS_UTILS) += nfs-utils package-$(FWRT_PACKAGE_NMAP) += nmap package-$(FWRT_PACKAGE_NOCATSPLASH) += nocatsplash package-$(FWRT_PACKAGE_NTPCLIENT) += ntpclient package-$(FWRT_PACKAGE_NVRAM) += nvram package-$(FWRT_PACKAGE_OBEXFTP) += obexftp package-$(FWRT_PACKAGE_OLSRD) += olsrd package-$(FWRT_COMPILE_OPENCDK) += opencdk package-$(FWRT_PACKAGE_OPENOBEX) += openobex package-$(FWRT_COMPILE_OPENLDAP) += openldap package-$(FWRT_PACKAGE_OPENNTPD) += openntpd package-$(FWRT_PACKAGE_OPENSER) += openser package-$(FWRT_COMPILE_OPENSSH) += openssh package-$(FWRT_COMPILE_OPENSSL) += openssl package-$(FWRT_PACKAGE_OPENSWAN) += openswan package-$(FWRT_PACKAGE_OPENVPN) += openvpn package-$(FWRT_PACKAGE_OPTION_ICON) += option-icon package-$(FWRT_COMPILE_OSIRIS) += osiris package-$(FWRT_PACKAGE_P910ND) += p910nd package-$(FWRT_PACKAGE_PALANTIR) += palantir package-$(FWRT_PACKAGE_PARPROUTED) += parprouted package-$(FWRT_PACKAGE_PCIUTILS) += pciutils package-$(FWRT_PACKAGE_PCMCIA_CS) += pcmcia-cs package-$(FWRT_COMPILE_PCRE) += pcre package-$(FWRT_PACKAGE_PEERCAST) += peercast package-$(FWRT_COMPILE_PHP4) += php4 package-$(FWRT_COMPILE_PHP5) += php5 package-$(FWRT_PACKAGE_PICOCOM) += picocom package-$(FWRT_PACKAGE_PIMD) += pimd package-$(FWRT_PACKAGE_PIPACS) += pipacs package-$(FWRT_COMPILE_PMACCT) += pmacct package-$(FWRT_COMPILE_POPT) += popt package-$(FWRT_PACKAGE_PORTMAP) += portmap package-$(FWRT_PACKAGE_PORTSENTRY) += portsentry package-$(FWRT_COMPILE_POSTGRESQL) += postgresql package-$(FWRT_PACKAGE_PPP) += ppp package-$(FWRT_PACKAGE_PPTP) += pptp package-$(FWRT_PACKAGE_PPTPD) += pptpd package-$(FWRT_PACKAGE_PRIVOXY) += privoxy package-$(FWRT_PACKAGE_PROCMAIL) += procmail package-$(FWRT_PACKAGE_PSYBNC) += psybnc package-$(FWRT_PACKAGE_PTUNNEL) += ptunnel package-$(FWRT_PACKAGE_QUAGGA) += quagga package-$(FWRT_COMPILE_RADIUSCLIENT_NG) += radiusclient-ng package-$(FWRT_PACKAGE_RADDUMP) += raddump package-$(FWRT_PACKAGE_RADVD) += radvd package-$(FWRT_PACKAGE_RARPD) += rarpd package-$(FWRT_PACKAGE_RDATE) += rdate package-$(FWRT_COMPILE_READLINE) += readline package-$(FWRT_PACKAGE_REAIM) += reaim package-$(FWRT_PACKAGE_ROBOCFG) += robocfg package-$(FWRT_COMPILE_RP_PPPOE) += rp-pppoe package-$(FWRT_PACKAGE_RRDCOLLECT) += rrdcollect package-$(FWRT_COMPILE_RRDTOOL) += rrdtool package-$(FWRT_COMPILE_RRS) += rrs package-$(FWRT_PACKAGE_RSYNC) += rsync package-$(FWRT_PACKAGE_SABLEVM) += sablevm package-$(FWRT_COMPILE_SABLEVM_CLASSPATH) += sablevm-classpath package-$(FWRT_COMPILE_SAMBA) += samba package-$(FWRT_PACKAGE_SANE_BACKENDS) += sane-backends package-$(FWRT_PACKAGE_SCANLOGD) += scanlogd package-$(FWRT_PACKAGE_SCDP) += scdp package-$(FWRT_PACKAGE_SCREEN) += screen package-$(FWRT_PACKAGE_SER2NET) += ser2net package-$(FWRT_PACKAGE_SERDISPLIB) += serdisplib package-$(FWRT_PACKAGE_SETPWC) += setpwc package-$(FWRT_PACKAGE_SETSERIAL) += setserial package-$(FWRT_PACKAGE_SHAT) += shat package-$(FWRT_PACKAGE_SHFS) += shfs package-$(FWRT_PACKAGE_SHOREWALL) += shorewall package-$(FWRT_PACKAGE_SIPP) += sipp package-$(FWRT_PACKAGE_SIPROXD) += siproxd package-$(FWRT_PACKAGE_SIPSAK) += sipsak package-$(FWRT_PACKAGE_SLEEPSHELL) += sleepshell package-$(FWRT_PACKAGE_SLURM) += slurm package-$(FWRT_PACKAGE_SMCROUTE) += smcroute package-$(FWRT_COMPILE_SNORT) += snort package-$(FWRT_COMPILE_SNORT_WIRELESS) += snort-wireless package-$(FWRT_PACKAGE_SOCAT) += socat package-$(FWRT_COMPILE_SPEEX) += speex package-$(FWRT_COMPILE_SQLITE) += sqlite package-$(FWRT_COMPILE_SQLITE2) += sqlite2 package-$(FWRT_PACKAGE_SQUID) += squid package-$(FWRT_PACKAGE_SRELAY) += srelay package-$(FWRT_PACKAGE_SSLTUNNEL) += ssltunnel package-$(FWRT_PACKAGE_SSMTP) += ssmtp package-$(FWRT_PACKAGE_STRACE) += strace package-$(FWRT_PACKAGE_SWCONFIG) += swconfig package-$(FWRT_PACKAGE_SYSLOG_NG) += syslog-ng package-$(FWRT_PACKAGE_LIBWRAP) += tcp_wrappers package-$(FWRT_PACKAGE_TCPDUMP) += tcpdump package-$(FWRT_PACKAGE_TINC) += tinc package-$(FWRT_PACKAGE_TINYPROXY) += tinyproxy package-$(FWRT_PACKAGE_TMSNC) += tmsnc package-$(FWRT_PACKAGE_TOR) += tor package-$(FWRT_PACKAGE_TRAFSHOW) += trafshow package-$(FWRT_PACKAGE_TTCP) += ttcp package-$(FWRT_PACKAGE_UCLIBCXX) += uclibc++ package-$(FWRT_PACKAGE_UCSPI_TCP) += ucspi-tcp package-$(FWRT_PACKAGE_UDP_BROADCAST_RELAY) += udp-broadcast-relay package-$(FWRT_PACKAGE_ULOGD) += ulogd package-$(FWRT_PACKAGE_UPDATEDD) += updatedd package-$(FWRT_COMPILE_USBUTILS) += usbutils package-$(FWRT_PACKAGE_USSP_PUSH) += ussp-push package-$(FWRT_PACKAGE_USTL) += ustl package-$(FWRT_COMPILE_UTIL_LINUX) += util-linux package-$(FWRT_PACKAGE_VGP) += vgp package-$(FWRT_PACKAGE_VIM) += vim package-$(FWRT_PACKAGE_VNC_REFLECTOR) += vnc-reflector package-$(FWRT_PACKAGE_VNCREPEATER) += vncrepeater package-$(FWRT_PACKAGE_VNSTAT) += vnstat package-$(FWRT_PACKAGE_VPNC) += vpnc package-$(FWRT_PACKAGE_VRRPD) += vrrpd package-$(FWRT_PACKAGE_VSFTPD) += vsftpd package-$(FWRT_PACKAGE_VTUN) += vtun package-$(FWRT_PACKAGE_WATCHDOG) += watchdog package-$(FWRT_PACKAGE_WCCPD) += wccpd package-$(FWRT_PACKAGE_WEECHAT) += weechat package-$(FWRT_PACKAGE_WIFIDOG) += wifidog package-$(FWRT_PACKAGE_WIRELESS_TOOLS) += wireless-tools package-$(FWRT_PACKAGE_WIVIZ) += wiviz package-$(FWRT_PACKAGE_WKNOCK) += wknock package-$(FWRT_PACKAGE_WOL) += wol package-$(FWRT_PACKAGE_WONDERSHAPER) += wondershaper package-$(FWRT_PACKAGE_WPA_SUPPLICANT) += wpa_supplicant package-$(FWRT_PACKAGE_WPUT) += wput package-$(FWRT_PACKAGE_WRT_RADAUTH) += wrt-radauth package-$(FWRT_PACKAGE_WX200D) += wx200d package-$(FWRT_PACKAGE_XINETD) += xinetd package-$(FWRT_PACKAGE_XSUPPLICANT) += xsupplicant package-$(FWRT_PACKAGE_ZLIB) += zlib # kernel addon packages package-$(FWRT_PACKAGE_KMOD_ALSA) += alsa package-$(FWRT_PACKAGE_KMOD_BROADCOM_DIAG) += broadcom-diag package-$(FWRT_PACKAGE_KMOD_BROADCOM_MMC) += broadcom-mmc package-$(FWRT_PACKAGE_KMOD_BROADCOM_WL) += broadcom-wl package-$(FWRT_PACKAGE_KMOD_MADWIFI) += madwifi package-$(FWRT_PACKAGE_KMOD_MINI_FO) += mini_fo package-$(FWRT_PACKAGE_KMOD_NOZOMI) += nozomi package-$(FWRT_PACKAGE_KMOD_SPCA5XX) += spca5xx package-$(FWRT_COMPILE_KMOD_SWITCH) += switch package-$(FWRT_PACKAGE_KMOD_WLCOMPAT) += wlcompat COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m)) INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y)) ifeq ($(FWRT_MYPACKAGE),y) MYPC:=mypackage-compile MYPI:=mypackage-install endif all: compile clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m)) compile: base-files-compile $(COMPILE_PACKAGES) base-files-arch-compile $(MYPC) install: base-files-install $(INSTALL_PACKAGES) base-files-arch-install $(MYPI) $(COMPILE_PACKAGES): base-files-compile $(INSTALL_PACKAGES): base-files-install $(STAMP_DIR): mkdir -p $@ $(TARGET_DIR): mkdir -p $(TARGET_DIR) %-prepare: $(STAMP_DIR) $(TARGET_DIR) @[ -f $(STAMP_DIR)/.$@ ] || { \ $(START_TRACE) "package/$(patsubst %-prepare,%,$@)-prepare: "; \ $(MAKE) -C $(patsubst %-prepare,%,$@) prepare && { \ touch $(STAMP_DIR)/.$@; \ $(CMD_TRACE) " done"; \ $(END_TRACE); \ } \ } %-compile: @[ -f $(STAMP_DIR)/.$@ ] || { \ $(START_TRACE) "package/$(patsubst %-compile,%,$@)-compile: "; \ $(MAKE) -C $(patsubst %-compile,%,$@) compile && { \ touch $(STAMP_DIR)/.$(patsubst %-compile,%,$@)-prepare; \ touch $(STAMP_DIR)/.$@; \ $(CMD_TRACE) " done"; \ $(END_TRACE); \ } \ } %-install: %-compile @$(START_TRACE) "package/$(patsubst %-install,%,$@)-install: " @$(MAKE) -C $(patsubst %-install,%,$@) install @$(CMD_TRACE) " done" @$(END_TRACE) %-rebuild: @$(START_TRACE) "package/$(patsubst %-rebuild,%,$@)-rebuild: " @rm -f $(STAMP_DIR)/.$(patsubst %-rebuild,%,$@)-* $(MAKE) -C $(patsubst %-rebuild,%,$@) rebuild @$(CMD_TRACE) " done" @$(END_TRACE) %-clean: @$(START_TRACE) "package/$(patsubst %-clean,%,$@)-clean: " @$(MAKE) -C $(patsubst %-clean,%,$@) clean @rm -f $(STAMP_DIR)/.$(patsubst %-clean,%,$@)-* @$(CMD_TRACE) " done" @$(END_TRACE)