summaryrefslogblamecommitdiffstats
path: root/Makefile.todo
blob: cad9b2a04cee61ba432854cf014373d487abcc08 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13



                                                                   








                                            

                                        



                                  



                                        

                                   


                                     



                                      



                                   



                                     
                                            
                                            
                                 



                                      

                                     

                                          



                                      

                                                           
 














                                                   

                          



                       











                                                                                                                                                         

                                                                                                                      
 







                                                               







                                                                         















                                                          







                                                             







                                                        



























                                                                
                                                                
                                            
                         
 
                                                                
                                            
                         
 
                                                              
                                            
                        
 
                                                              
                                            
                        
 















                                                                  











                                                                










                                                                                   










                                                                                 










                                                                               










                                                                                           





















                                                                                   



                                                             
                                                                                           
                                                             

                                                              
 




                                                                                           




                                                                     




















                                                                                  
                                                                                         

                            
                                                                               

                            

















                                                                                         

                                                                    







                                                                                                           
 
                           
                       
BASE = $(PWD)

BUILD_BSP = $(BASE)/build/arm-rtems5-xilinx_zynq_a9_qemu-everything

LOCAL_INC = rtemsbsd/include/rtems/bsd/local

LOCAL_SRC = rtemsbsd/local

FREEBSD_SRC = freebsd-org

TOOLS = freebsd-org/sys/tools

GENERATED =
GENERATED += $(LOCAL_INC)/cryptodev_if.h
GENERATED += $(LOCAL_SRC)/cryptodev_if.c
GENERATED += $(LOCAL_INC)/usb_if.h
GENERATED += $(LOCAL_SRC)/usb_if.c
GENERATED += $(LOCAL_INC)/bus_if.h
GENERATED += $(LOCAL_SRC)/bus_if.c
GENERATED += $(LOCAL_INC)/device_if.h
GENERATED += $(LOCAL_SRC)/device_if.c
GENERATED += $(LOCAL_INC)/usbdevs_data.h
GENERATED += $(LOCAL_INC)/usbdevs.h
GENERATED += $(LOCAL_INC)/ifdi_if.h
GENERATED += $(LOCAL_SRC)/ifdi_if.c
GENERATED += $(LOCAL_INC)/miibus_if.h
GENERATED += $(LOCAL_SRC)/miibus_if.c
GENERATED += $(LOCAL_INC)/miidevs.h
GENERATED += $(LOCAL_INC)/ofw_if.h
GENERATED += $(LOCAL_SRC)/ofw_if.c
GENERATED += $(LOCAL_INC)/ofw_bus_if.h
GENERATED += $(LOCAL_SRC)/ofw_bus_if.c
GENERATED += $(LOCAL_INC)/pci_if.h
GENERATED += $(LOCAL_SRC)/pci_if.c
GENERATED += $(LOCAL_INC)/pcib_if.h
GENERATED += $(LOCAL_SRC)/pcib_if.c
GENERATED += $(LOCAL_INC)/mmcbr_if.h
GENERATED += $(LOCAL_SRC)/mmcbr_if.c
GENERATED += $(LOCAL_INC)/mmcbus_if.h
GENERATED += $(LOCAL_SRC)/mmcbus_if.c
GENERATED += $(LOCAL_SRC)/rtwn-rtl8192cfwT.c
GENERATED += $(LOCAL_SRC)/rtwn-rtl8188eufw.c
GENERATED += $(LOCAL_SRC)/runfw.c
GENERATED += $(LOCAL_INC)/sdhci_if.h
GENERATED += $(LOCAL_SRC)/sdhci_if.c
GENERATED += $(LOCAL_INC)/gpiobus_if.h
GENERATED += $(LOCAL_SRC)/gpiobus_if.c
GENERATED += $(LOCAL_INC)/iicbus_if.h
GENERATED += $(LOCAL_SRC)/iicbus_if.c
GENERATED += $(LOCAL_INC)/fdt_pinctrl_if.h
GENERATED += $(LOCAL_SRC)/fdt_pinctrl_if.c
GENERATED += $(LOCAL_INC)/clknode_if.h
GENERATED += $(LOCAL_SRC)/clknode_if.c
GENERATED += $(LOCAL_INC)/hdmi_if.h
GENERATED += $(LOCAL_SRC)/hdmi_if.c
GENERATED += rtemsbsd/include/machine/rtems-bsd-regdomain.h
GENERATED += rtemsbsd/rtems/rtems-bsd-regdomain.c

YACC_GENERATED =
LEX_GENERATED =

YACC_GENERATED += freebsd/lib/libc/net/nsparser.h
YACC_GENERATED += freebsd/lib/libc/net/nsparser.c
LEX_GENERATED += freebsd/lib/libc/net/nslexer.c

YACC_GENERATED += freebsd/sbin/pfctl/parse.h
YACC_GENERATED += freebsd/sbin/pfctl/parse.c

YACC_GENERATED += freebsd/contrib/libpcap/grammar.h
YACC_GENERATED += freebsd/contrib/libpcap/grammar.c
LEX_GENERATED += freebsd/contrib/libpcap/scanner.h
LEX_GENERATED += freebsd/contrib/libpcap/scanner.c

all: yacc lex $(GENERATED)

yacc: $(YACC_GENERATED)

lex: $(LEX_GENERATED)

program-header:
	cd freebsd/bin/stty && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/bin/stty/*.o -p stty
	cd freebsd/contrib/tcpdump && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/contrib/tcpdump/*.o -p tcpdump
	cd freebsd/sbin/ifconfig && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/ifconfig/*.o -p ifconfig
	cd freebsd/sbin/pfctl && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/pfctl/*.o -p pfctl
	cd freebsd/sbin/ping6 && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/ping6/*.o -p ping6
	cd freebsd/sbin/ping && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/ping/*.o -p ping
	cd freebsd/sbin/route && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/route/*.o -p route
	cd freebsd/sbin/sysctl && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/sbin/sysctl/*.o -p sysctl
	cd freebsd/tools/tools/net80211/wlanstats && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/tools/tools/net80211/wlanstats/*.o -p wlanstats
	cd freebsd/usr.bin/netstat && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/usr.bin/netstat/*.o -p netstat
	cd freebsd/usr.sbin/arp && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/freebsd/usr.sbin/arp/*.o -p arp
	cd ipsec-tools/src/racoon && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/ipsec-tools/src/racoon/*.o -p racoon
	cd ipsec-tools/src/setkey && $(BASE)/userspace-header-gen.py $(BUILD_BSP)/ipsec-tools/src/setkey/*.o -p setkey

$(LOCAL_INC)/usbdevs.h: $(FREEBSD_SRC)/sys/dev/usb/usbdevs
	awk -f $(TOOLS)/usbdevs2h.awk $< -h
	mv usbdevs.h $@

$(LOCAL_INC)/usbdevs_data.h: $(FREEBSD_SRC)/sys/dev/usb/usbdevs
	awk -f $(TOOLS)/usbdevs2h.awk $< -d
	mv usbdevs_data.h $@

$(LOCAL_INC)/cryptodev_if.h: $(FREEBSD_SRC)/sys/opencrypto/cryptodev_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv cryptodev_if.h $@

$(LOCAL_SRC)/cryptodev_if.c: $(FREEBSD_SRC)/sys/opencrypto/cryptodev_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv cryptodev_if.c $@

$(LOCAL_INC)/usb_if.h: $(FREEBSD_SRC)/sys/dev/usb/usb_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv usb_if.h $@

$(LOCAL_SRC)/usb_if.c: $(FREEBSD_SRC)/sys/dev/usb/usb_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv usb_if.c $@

$(LOCAL_INC)/bus_if.h: $(FREEBSD_SRC)/sys/kern/bus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv bus_if.h $@

$(LOCAL_SRC)/bus_if.c: $(FREEBSD_SRC)/sys/kern/bus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv bus_if.c $@

$(LOCAL_INC)/device_if.h: $(FREEBSD_SRC)/sys/kern/device_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv device_if.h $@

$(LOCAL_SRC)/device_if.c: $(FREEBSD_SRC)/sys/kern/device_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv device_if.c $@

$(LOCAL_INC)/ifdi_if.h: $(FREEBSD_SRC)/sys/net/ifdi_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv ifdi_if.h $@

$(LOCAL_SRC)/ifdi_if.c: $(FREEBSD_SRC)/sys/net/ifdi_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv ifdi_if.c $@

$(LOCAL_INC)/miidevs.h: $(FREEBSD_SRC)/sys/dev/mii/miidevs
	awk -f $(TOOLS)/miidevs2h.awk $<
	mv miidevs.h $@

$(LOCAL_INC)/miibus_if.h: $(FREEBSD_SRC)/sys/dev/mii/miibus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv miibus_if.h $@

$(LOCAL_SRC)/miibus_if.c: $(FREEBSD_SRC)/sys/dev/mii/miibus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv miibus_if.c $@

$(LOCAL_INC)/pci_if.h: $(FREEBSD_SRC)/sys/dev/pci/pci_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv pci_if.h $@

$(LOCAL_SRC)/pci_if.c: $(FREEBSD_SRC)/sys/dev/pci/pci_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv pci_if.c $@

$(LOCAL_INC)/pcib_if.h: $(FREEBSD_SRC)/sys/dev/pci/pcib_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv pcib_if.h $@

$(LOCAL_SRC)/pcib_if.c: $(FREEBSD_SRC)/sys/dev/pci/pcib_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv pcib_if.c $@

$(LOCAL_INC)/mmcbus_if.h: $(FREEBSD_SRC)/sys/dev/mmc/mmcbus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv mmcbus_if.h $@

$(LOCAL_SRC)/mmcbus_if.c: $(FREEBSD_SRC)/sys/dev/mmc/mmcbus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv mmcbus_if.c $@

$(LOCAL_INC)/mmcbr_if.h: $(FREEBSD_SRC)/sys/dev/mmc/mmcbr_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv mmcbr_if.h $@

$(LOCAL_SRC)/mmcbr_if.c: $(FREEBSD_SRC)/sys/dev/mmc/mmcbr_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv mmcbr_if.c $@

$(LOCAL_INC)/ofw_if.h: $(FREEBSD_SRC)/sys/dev/ofw/ofw_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv ofw_if.h $@

$(LOCAL_SRC)/ofw_if.c: $(FREEBSD_SRC)/sys/dev/ofw/ofw_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv ofw_if.c $@

$(LOCAL_INC)/ofw_bus_if.h: $(FREEBSD_SRC)/sys/dev/ofw/ofw_bus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv ofw_bus_if.h $@

$(LOCAL_SRC)/ofw_bus_if.c: $(FREEBSD_SRC)/sys/dev/ofw/ofw_bus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv ofw_bus_if.c $@

$(LOCAL_INC)/if_dwc_if.h: $(FREEBSD_SRC)/sys/dev/dwc/if_dwc_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv if_dwc_if.h $@

$(LOCAL_SRC)/if_dwc_if.c: $(FREEBSD_SRC)/sys/dev/dwc/if_dwc_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv if_dwc_if.c $@

$(LOCAL_INC)/gpio_if.h: $(FREEBSD_SRC)/sys/dev/gpio/gpio_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv gpio_if.h $@

$(LOCAL_INC)/gpiobus_if.h: $(FREEBSD_SRC)/sys/dev/gpio/gpiobus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv gpiobus_if.h $@

$(LOCAL_SRC)/gpiobus_if.c: $(FREEBSD_SRC)/sys/dev/gpio/gpiobus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i gpiobus_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "gpiobus_if.h"|#include <rtems/bsd/local/gpiobus_if.h>|'
	mv gpiobus_if.c $@

$(LOCAL_INC)/iicbus_if.h: $(FREEBSD_SRC)/sys/dev/iicbus/iicbus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv iicbus_if.h $@

$(LOCAL_SRC)/iicbus_if.c: $(FREEBSD_SRC)/sys/dev/iicbus/iicbus_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i iicbus_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "iicbus_if.h"|#include <rtems/bsd/local/iicbus_if.h>|'
	mv iicbus_if.c $@

$(LOCAL_INC)/sdhci_if.h: $(FREEBSD_SRC)/sys/dev/sdhci/sdhci_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv sdhci_if.h $@

$(LOCAL_SRC)/sdhci_if.c: $(FREEBSD_SRC)/sys/dev/sdhci/sdhci_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i sdhci_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "sdhci_if.h"|#include <rtems/bsd/local/sdhci_if.h>|'
	mv sdhci_if.c $@

$(LOCAL_INC)/fdt_pinctrl_if.h: $(FREEBSD_SRC)/sys/dev/fdt/fdt_pinctrl_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv fdt_pinctrl_if.h $@

$(LOCAL_SRC)/fdt_pinctrl_if.c: $(FREEBSD_SRC)/sys/dev/fdt/fdt_pinctrl_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i fdt_pinctrl_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "fdt_pinctrl_if.h"|#include <rtems/bsd/local/fdt_pinctrl_if.h>|'
	mv fdt_pinctrl_if.c $@

$(LOCAL_INC)/clknode_if.h: $(FREEBSD_SRC)/sys/dev/extres/clk/clknode_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv clknode_if.h $@

$(LOCAL_SRC)/clknode_if.c: $(FREEBSD_SRC)/sys/dev/extres/clk/clknode_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i clknode_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "clknode_if.h"|#include <rtems/bsd/local/clknode_if.h>|'
	mv clknode_if.c $@

$(LOCAL_INC)/hdmi_if.h: $(FREEBSD_SRC)/sys/dev/hdmi/hdmi_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -h
	mv hdmi_if.h $@

$(LOCAL_SRC)/hdmi_if.c: $(FREEBSD_SRC)/sys/dev/hdmi/hdmi_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	sed -i hdmi_if.c \
	    -e '1 i\#include <machine/rtems-bsd-kernel-space.h>\n' \
	    -e 's|#include "hdmi_if.h"|#include <rtems/bsd/local/hdmi_if.h>|'
	mv hdmi_if.c $@

$(LOCAL_SRC)/gpio_if.c: $(FREEBSD_SRC)/sys/dev/gpio/gpio_if.m
	awk -f $(TOOLS)/makeobjops.awk $< -c
	mv gpio_if.c $@

$(LOCAL_SRC)/rtwn-rtl8192cfwT.c: $(FREEBSD_SRC)/sys/contrib/dev/rtwn/rtwn-rtl8192cfwT.fw.uu
	uudecode -o /dev/stdout $< | python firmware-gen.py \
	    -l "$(FREEBSD_SRC)/sys/contrib/dev/rtwn/LICENSE" \
	    rtwn-rtl8192cfwT - $@

$(LOCAL_SRC)/rtwn-rtl8188eufw.c: $(FREEBSD_SRC)/sys/contrib/dev/rtwn/rtwn-rtl8188eufw.fw.uu
	uudecode -o /dev/stdout $< | python firmware-gen.py \
	    -l "$(FREEBSD_SRC)/sys/contrib/dev/rtwn/LICENSE" \
	    rtwn-rtl8188eufw - $@

$(LOCAL_SRC)/runfw.c: $(FREEBSD_SRC)/sys/contrib/dev/run/rt2870.fw.uu
	uudecode -o /dev/stdout $< | python firmware-gen.py \
	    -l "$(FREEBSD_SRC)/sys/contrib/dev/run/LICENSE" \
	    runfw - $@

freebsd/usr.bin/netstat/nl_symbols.c: $(FREEBSD_SRC)/usr.bin/netstat/nlist_symbols
	awk '\
	    BEGIN { \
		print "#include <sys/param.h>"; \
		print "#include <nlist.h>"; \
		print "const struct nlist nl[] = {"; \
	    } \
	    !/^\#/ { printf("\t{ .n_name = \"%s\" },\n", $$2); } \
	    END { print "\t{ .n_name = NULL },\n};" } \
	    ' < $< > $@ || rm -f $@

freebsd/usr.bin/netstat/nl_defs.h: $(FREEBSD_SRC)/usr.bin/netstat/nlist_symbols
	awk '\
	    BEGIN { \
		print "#include <nlist.h>"; \
		print "extern const struct nlist nl[];"; \
		i = 0; \
	    } \
	    !/^\#/ { printf("\#define\tN%s\t%s\n", toupper($$2), i++); }' \
	    < $< > $@ || rm -f $@

rtemsbsd/include/machine/rtems-bsd-regdomain.h: $(FREEBSD_SRC)/lib/lib80211/regdomain.xml
	rtems-bin2c -H $< $@

rtemsbsd/rtems/rtems-bsd-regdomain.c: $(FREEBSD_SRC)/lib/lib80211/regdomain.xml
	rtems-bin2c -C $< $@

freebsd/lib/libc/net/nsparser.h: freebsd/lib/libc/net/nsparser.c

freebsd/lib/libc/net/nsparser.c: freebsd/lib/libc/net/nsparser.y
	cd freebsd/lib/libc/net && yacc -p _nsyy -o nsparser.c -d nsparser.y

freebsd/lib/libc/net/nslexer.c: freebsd/lib/libc/net/nslexer.l
	cd freebsd/lib/libc/net && lex -P _nsyy -DYY_BUF_SIZE=1024 -o nslexer.c nslexer.l

freebsd/sbin/pfctl/parse.h: freebsd/sbin/pfctl/parse.c

freebsd/sbin/pfctl/parse.c: freebsd/sbin/pfctl/parse.y
	cd freebsd/sbin/pfctl && yacc -p pfctly -o parse.c -d parse.y

freebsd/contrib/libpcap/grammar.h: freebsd/contrib/libpcap/grammar.c

freebsd/contrib/libpcap/grammar.c: freebsd/contrib/libpcap/grammar.y
	cd freebsd/contrib/libpcap && yacc -p pcap_ -o grammar.c -d grammar.y

freebsd/contrib/libpcap/scanner.h: freebsd/contrib/libpcap/scanner.c

freebsd/contrib/libpcap/scanner.c: freebsd/contrib/libpcap/scanner.l
	cd freebsd/contrib/libpcap && lex -P pcap_ --header-file=scanner.h --nounput -o scanner.c scanner.l

clean-yacc:
	rm $(YACC_GENERATED)

clean-lex:
	rm $(LEX_GENERATED)

clean: clean-yacc clean-lex
	rm $(GENERATED)