home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / NEXTSTEP / Drivers / joystick-0.0-I / joystick.next / Makefile < prev    next >
Encoding:
Makefile  |  1997-11-03  |  1.6 KB  |  64 lines

  1. #
  2.  
  3. NAME = joystick
  4.  
  5. # This must be an absolute path
  6. LIBDIR = /Users/mkienenb/Projects/joystick/joystick.next/production
  7.  
  8. # grep '^#define JOYSTICK_MAJOR' joystick_kernel.h | awk '{ print $3 }'
  9. MAJOR_DEVICE=32
  10.  
  11. BINOWN = root
  12. BINGRP = wheel
  13. RELOCMODE= 644
  14. BINMODE= 755
  15.  
  16. INSTALL_RELOC = install -o ${BINOWN} -g ${BINGRP} -m ${RELOCMODE}
  17. INSTALL_BIN = install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}
  18. #ARCHES=-arch m68k -arch i386 -arch sparc -arch hppa
  19. ARCHES=-arch i386
  20. CFLAGS= -Wall -O -I. -DKERNEL -DKERNEL_FEATURES $(ARCHES)
  21.  
  22. KL_MODULE= $(LIBDIR)/$(NAME)/$(NAME)_reloc
  23.  
  24. CFILES= joystick.c
  25. LD=kl_ld
  26.  
  27. OFILES= joystick.o
  28.  
  29. all: $(NAME)_reloc test
  30.  
  31. $(NAME)_reloc : $(OFILES) LoadCommands UnloadCommands
  32.     ${LD} -n $(NAME) -l LoadCommands -u UnloadCommands $(ARCHES) \
  33.             -i instance -d $(LIBDIR)/$(NAME)/$(NAME)_loadable -o $@ $(OFILES)
  34.  
  35. install: $(NAME)_reloc
  36.     if [ ! -d $(LIBDIR)/$(NAME) ] ; then \
  37.         mkdirs $(LIBDIR)/$(NAME) ;\
  38.     fi
  39.     $(INSTALL_RELOC) $(NAME)_reloc $(KL_MODULE)
  40.     sed -e 's,%INSTALL%,$(LIBDIR)/$(NAME)/,' $(NAME)_load-dist > $(NAME)_load
  41.     $(INSTALL_BIN) $(NAME)_load $(LIBDIR)/$(NAME)
  42.     $(INSTALL_BIN) $(NAME)_unload $(LIBDIR)/$(NAME)
  43.     if [ -f $(NAME)_loadable ] ; then \
  44.         $(INSTALL_BIN) $(NAME)_loadable $(LIBDIR)/$(NAME) ; \
  45.     fi
  46.  
  47. install_driver::
  48.     /usr/etc/mknod /dev/js0 c $(MAJOR_DEVICE) 0
  49.     /usr/etc/mknod /dev/js1 c $(MAJOR_DEVICE) 1
  50.     $(LIBDIR)/$(NAME)/joystick_load
  51.  
  52. deinstall_driver::
  53.     $(LIBDIR)/$(NAME)/joystick_unload
  54.     rm /dev/js0 /dev/js1
  55.  
  56. test::
  57.     (cd test; make)
  58.  
  59. clean::
  60.     rm -f ${OFILES} *~ $(NAME)_reloc $(NAME)_load
  61.     # rm -f ${OFILES} *~ $(NAME)_reloc $(NAME)_load $(NAME)_loadable
  62.     (cd test; make clean)
  63.  
  64.