home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / Emulation / Atari800 / Makefile < prev    next >
Makefile  |  1998-01-28  |  10KB  |  382 lines

  1. #
  2. # Note: x11-nas and xview-nas versions are linked with -lsocket and
  3. #       -lnsl which is required for the Sun versions. Remove them
  4. #       if they cause a problem on your system.
  5. #
  6.  
  7. CC        = gcc
  8. CPPFLAGS    = $(OTHER)
  9. CFLAGS        = -c -O6 -DGNU_C -Wall 
  10. LD        = gcc
  11. LDFLAGS        =
  12. LDLIBS        = -lm
  13.  
  14. PREFIX        = /usr/local
  15. BIN_PATH    = ${PREFIX}/bin
  16. LIB_PATH    = ${PREFIX}/lib
  17. MAN_PATH    = ${PREFIX}/man
  18.  
  19. default :
  20.     @echo "To build the Atari 800 Emulator, type:"
  21.     @echo "make <version>"
  22.     @echo ""
  23.     @echo "where <version> is one of"
  24.     @echo "  basic"
  25.     @echo "  freebsd-x11 freebsd-x11-shm"
  26.     @echo "  freebsd-xview freebsd-xview-shm"
  27.     @echo "  linux-svgalib linux-svgalib-nas"
  28.     @echo "  linux-x11-nas linux-x11-nas-shm"
  29.     @echo "  linux-xview-nas linux-xview-nas-shm"
  30.     @echo "  x11 x11-shm x11-nas x11-nas-shm"
  31.     @echo "  xview xview-shm xview-nas xview-nas-shm"
  32.     @echo "  motif motif-nas"
  33.     @echo "  hp9000-ansic-x11"
  34.     @echo "  curses sunos-curses linux-ncurses freebsd-ncurses"
  35.     @echo ""
  36.     @echo "To reconfigure options, type: make config"
  37.     @echo "To clean directory, type: make clean"
  38.     @echo "To install the Emulator, type:"
  39.     @echo ""
  40.     @echo "make install-svgalib"
  41.     @echo "make install"
  42.  
  43. basic :
  44.     make atari800 \
  45.         CPPFLAGS="-DBASIC" \
  46.         LDLIBS="-lm" \
  47.         OBJ="atari_basic.o"
  48.  
  49. linux-svgalib :
  50.     make atari800 \
  51.         LDLIBS="-lvgagl -lvga -lm" \
  52.         OBJ="atari_svgalib.o"
  53.  
  54. linux-svgalib-nas :
  55.     make atari800 \
  56.         OTHER="-DNAS" \
  57.         LDFLAGS="-L/usr/X11/lib" \
  58.         LDLIBS="-lvgagl -lvga -lm -laudio -lXau" \
  59.         OBJ="atari_svgalib.o nas.o"
  60.  
  61. linux-x11-nas :
  62.     make atari800 \
  63.         CPPFLAGS="-I/usr/openwin/include -DNAS" \
  64.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  65.         LDLIBS="-laudio -lXau -lX11 -lm" \
  66.         OBJ="atari_x11.o nas.o"
  67.  
  68. linux-x11-nas-shm :
  69.     make atari800 \
  70.         CPPFLAGS="-I/usr/openwin/include -DNAS -DSHM" \
  71.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  72.         LDLIBS="-laudio -lXau -lX11 -lXext -lm" \
  73.         OBJ="atari_x11.o nas.o"
  74.  
  75. linux-xview-nas :
  76.     make atari800 \
  77.         OTHER="-I/usr/openwin/include -DXVIEW -DNAS" \
  78.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  79.         LDLIBS="-lxview -lolgx -laudio -lXau -lX11 -lm" \
  80.         OBJ="atari_x11.o nas.o"
  81.  
  82. linux-xview-nas-shm :
  83.     make atari800 \
  84.         OTHER="-I/usr/openwin/include -DXVIEW -DNAS -DSHM" \
  85.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  86.         LDLIBS="-lxview -lolgx -laudio -lXau -lX11 -lXext -lm" \
  87.         OBJ="atari_x11.o nas.o"
  88.  
  89. x11 :
  90.     make atari800 \
  91.         CPPFLAGS="-I/usr/openwin/include" \
  92.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  93.         LDLIBS="-lX11 -lm" \
  94.         OBJ="atari_x11.o"
  95.  
  96. x11-shm :
  97.     make atari800 \
  98.         CPPFLAGS="-I/usr/openwin/include -DSHM" \
  99.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  100.         LDLIBS="-lX11 -lXext -lm" \
  101.         OBJ="atari_x11.o"
  102.  
  103. x11-nas :
  104.     @echo "******************************************************"
  105.     @echo "* Remove -lsocket and -lnsl if they produce an error *"
  106.     @echo "******************************************************"
  107.     make atari800 \
  108.         CPPFLAGS="-I/usr/openwin/include -DNAS" \
  109.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  110.         LDLIBS="-laudio -lXau -lX11 -lsocket -lnsl -lm" \
  111.         OBJ="atari_x11.o nas.o"
  112.  
  113. x11-nas-shm :
  114.     @echo "******************************************************"
  115.     @echo "* Remove -lsocket and -lnsl if they produce an error *"
  116.     @echo "******************************************************"
  117.     make atari800 \
  118.         CPPFLAGS="-I/usr/openwin/include -DNAS -DSHM" \
  119.         LDFLAGS="-L/usr/X11/lib -L/usr/openwin/lib" \
  120.         LDLIBS="-laudio -lXau -lX11 -lXext -lsocket -lnsl -lm" \
  121.         OBJ="atari_x11.o nas.o"
  122.  
  123. hp9000-ansic-x11 :
  124.     make atari800 \
  125.         CC="cc" \
  126.         CPPFLAGS="-D_POSIX_SOURCE" \
  127.         CFLAGS="-c -O -Aa -I/usr/include/X11R5" \
  128.         LD="cc" \
  129.         LDFLAGS="-L/usr/lib/X11R5" \
  130.         LDLIBS="-lX11 -lm" \
  131.         OBJ="atari_x11.o"
  132.  
  133. xview :
  134.     make atari800 \
  135.         OTHER="-I/usr/openwin/include -DXVIEW" \
  136.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  137.         LDLIBS="-lxview -lolgx -lX11 -lm" \
  138.         OBJ="atari_x11.o"
  139.  
  140. xview-shm :
  141.     make atari800 \
  142.         OTHER="-I/usr/openwin/include -DXVIEW -DSHM" \
  143.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  144.         LDLIBS="-lxview -lolgx -lX11 -lXext -lm" \
  145.         OBJ="atari_x11.o"
  146.  
  147. xview-nas :
  148.     @echo "******************************************************"
  149.     @echo "* Remove -lsocket and -lnsl if they produce an error *"
  150.     @echo "******************************************************"
  151.     make atari800 \
  152.         OTHER="-I/usr/openwin/include -DXVIEW -DNAS" \
  153.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  154.         LDLIBS="-lxview -lolgx -laudio -lXau -lX11 -lsocket -lnsl -lm" \
  155.         OBJ="atari_x11.o nas.o"
  156.  
  157. xview-nas-shm :
  158.     @echo "******************************************************"
  159.     @echo "* Remove -lsocket and -lnsl if they produce an error *"
  160.     @echo "******************************************************"
  161.     make atari800 \
  162.         OTHER="-I/usr/openwin/include -DXVIEW -DNAS -DSHM" \
  163.         LDFLAGS="-L/usr/openwin/lib -L/usr/X11/lib" \
  164.         LDLIBS="-lxview -lolgx -laudio -lXau -lX11 -lXext -lsocket -lnsl -lm" \
  165.         OBJ="atari_x11.o nas.o"
  166.  
  167. motif :
  168.     make atari800 \
  169.         OTHER="-I/opt/IXImd12s/include -DMOTIF -DNOSTATUS -DNOSYNC" \
  170.         LDFLAGS="-L/opt/IXImd12s/lib" \
  171.         LDLIBS="-lXm -lXt -lX11 -lgen -lm" \
  172.         OBJ="atari_x11.o"
  173. debug :
  174.     make atari800 \
  175.         CFLAGS="-c -O0 -DGNU_C -Wall" \
  176.         OTHER="-I/opt/IXImd12s/include -ggdb3 -DDEBUG -DMOTIF -DTRACE -DNOSTATUS -DNOSYNC" \
  177.         LDFLAGS="-L/opt/IXImd12s/lib" \
  178.         LDLIBS="-lXm -lXt -lX11 -lgen -lm" \
  179.         OBJ="atari_x11.o"
  180.  
  181. motif-nas :
  182.     make atari800 \
  183.         OTHER="-I/opt/IXImd12s/include -DNAS -DMOTIF" \
  184.         LDFLAGS="-L/opt/IXImd12s/lib" \
  185.         LDLIBS="-lXm -lXt -lX11 -lgen -lm -lXau -laudio" \
  186.         OBJ="atari_x11.o nas.o"
  187.  
  188. curses :
  189.     make atari800 \
  190.         CPPFLAGS="-DCURSES" \
  191.         LDLIBS="-lcurses -lm" \
  192.         OBJ="atari_curses.o"
  193.  
  194. sunos-curses :
  195.     make atari800 \
  196.         CPPFLAGS="-I/usr/5include -DCURSES" \
  197.         LDLIBS="-lcurses -lm" \
  198.         LDFLAGS="-L/usr/5lib" \
  199.         OBJ="atari_curses.o"
  200.  
  201. linux-ncurses :
  202.     make atari800 \
  203.         CPPFLAGS="-I/usr/include/ncurses -DCURSES -DNCURSES" \
  204.         LDLIBS="-lncurses -lm" \
  205.         OBJ="atari_curses.o"
  206.  
  207. freebsd-ncurses :
  208.     make atari800 \
  209.         CPPFLAGS="-I/usr/include/ncurses -DCURSES -DNCURSES" \
  210.         LDLIBS="-lncurses -lm" \
  211.         OBJ="atari_curses.o"
  212.  
  213. freebsd-x11 :
  214.     make atari800 \
  215.         CPPFLAGS="-I/usr/X11R6/include" \
  216.         LDFLAGS="-L/usr/X11R6/lib" \
  217.         LDLIBS="-lX11 -lm" \
  218.         OBJ="atari_x11.o"
  219.  
  220. freebsd-x11-shm :
  221.     make atari800 \
  222.         CPPFLAGS="-I/usr/X11R6/include -DSHM" \
  223.         LDFLAGS="-L/usr/X11R6/lib" \
  224.         LDLIBS="-lX11 -lXext -lm" \
  225.         OBJ="atari_x11.o"
  226.  
  227. freebsd-xview : 
  228.     make atari800 \
  229.         OTHER="-I/usr/X11R6/include -DXVIEW" \
  230.         LDFLAGS="-L/usr/X11R6/lib" \
  231.         LDLIBS="-lxview -lolgx -lX11 -lm" \
  232.         OBJ="atari_x11.o"
  233.  
  234. freebsd-xview-shm :
  235.     make atari800 \
  236.         OTHER="-I/usr/X11R6/include -DXVIEW -DSHM" \
  237.         LDFLAGS="-L/usr/X11R6/lib" \
  238.         LDLIBS="-lxview -lolgx -lX11 -lXext -lm" \
  239.         OBJ="atari_x11.o"
  240.  
  241. #
  242. # ======================================================
  243. # You should not need to modify anything below this here
  244. # ======================================================
  245. #
  246.  
  247. INCLUDES    =    Makefile \
  248.             config.h \
  249.             rt-config.h \
  250.             cpu.h \
  251.             atari.h \
  252.             colours.h \
  253.             antic.h \
  254.             gtia.h \
  255.             pokey11.h \
  256.             pia.h \
  257.             patch.h \
  258.             mem.h \
  259.             devices.h \
  260.             monitor.h \
  261.             sio.h \
  262.             supercart.h \
  263.             nas.h \
  264.             platform.h
  265.  
  266. config config.h    :    configure
  267.     ./configure
  268.  
  269. configure    :    configure.o prompts.o
  270.     $(LD) $(LDFLAGS) configure.o prompts.o $(LDLIBS) -o configure
  271.  
  272. configure.o    :    configure.c prompts.h
  273.     $(CC) $(CPPFLAGS) $(CFLAGS) configure.c
  274.  
  275. OBJECTS    =    atari.o \
  276.         cpu.o \
  277.         mem.o \
  278.         patch.o \
  279.         monitor.o \
  280.         sio.o \
  281.         devices.o \
  282.         antic.o \
  283.         gtia.o \
  284.         pia.o \
  285.         supercart.o \
  286.         prompts.o \
  287.         rt-config.o \
  288.         ui.o \
  289.                 list.o \
  290.                 sound.o \
  291.                 pokey11.o
  292.  
  293. atari800    :    $(OBJECTS) $(OBJ)
  294.     $(LD) $(LDFLAGS) $(OBJECTS) $(OBJ) $(LDLIBS) -o atari800
  295.  
  296. atari.o        :    atari.c $(INCLUDES) prompts.h
  297.     $(CC) $(CPPFLAGS) $(CFLAGS) atari.c
  298.  
  299. cpu.o        :    cpu.c $(INCLUDES)
  300.     $(CC) $(CPPFLAGS) $(CFLAGS) cpu.c
  301.  
  302. mem.o        :    mem.c $(INCLUDES)
  303.     $(CC) $(CPPFLAGS) $(CFLAGS) mem.c
  304.  
  305. patch.o        :    patch.c $(INCLUDES)
  306.     $(CC) $(CPPFLAGS) $(CFLAGS) patch.c
  307.  
  308. monitor.o    :    monitor.c $(INCLUDES)
  309.     $(CC) $(CPPFLAGS) $(CFLAGS) monitor.c
  310.  
  311. sio.o        :    sio.c $(INCLUDES)
  312.     $(CC) $(CPPFLAGS) $(CFLAGS) sio.c
  313.  
  314. devices.o    :    devices.c $(INCLUDES)
  315.     $(CC) $(CPPFLAGS) $(CFLAGS) devices.c
  316.  
  317. antic.o        :    antic.c $(INCLUDES)
  318.     $(CC) $(CPPFLAGS) $(CFLAGS) antic.c
  319.  
  320. gtia.o        :    gtia.c $(INCLUDES)
  321.     $(CC) $(CPPFLAGS) $(CFLAGS) gtia.c
  322.  
  323. pia.o        :    pia.c $(INCLUDES)
  324.     $(CC) $(CPPFLAGS) $(CFLAGS) pia.c
  325.  
  326. supercart.o    :    supercart.c $(INCLUDES)
  327.     $(CC) $(CPPFLAGS) $(CFLAGS) supercart.c
  328.  
  329. ui.o        :    ui.c $(INCLUDES)
  330.     $(CC) $(CPPFLAGS) $(CFLAGS) ui.c
  331.  
  332. list.o        :    list.c $(INCLUDES)
  333.     $(CC) $(CPPFLAGS) $(CFLAGS) list.c
  334.  
  335. atari_x11.o    :    atari_x11.c $(INCLUDES)
  336.     $(CC) $(CPPFLAGS) $(CFLAGS) atari_x11.c
  337.  
  338. atari_svgalib.o    :    atari_svgalib.c $(INCLUDES)
  339.     $(CC) $(CPPFLAGS) $(CFLAGS) atari_svgalib.c
  340.  
  341. atari_curses.o    :    atari_curses.c $(INCLUDES)
  342.     $(CC) $(CPPFLAGS) $(CFLAGS) atari_curses.c
  343.  
  344. atari_amiga.o    :    atari_amiga.c $(INCLUDES)
  345.     $(CC) $(CPPFLAGS) $(CFLAGS) atari_amiga.c
  346.  
  347. nas.o        :    nas.c $(INCLUDES)
  348.     $(CC) $(CPPFLAGS) $(CFLAGS) nas.c
  349.  
  350. prompts.o    :    prompts.c prompts.h
  351.     $(CC) $(CPPFLAGS) $(CFLAGS) prompts.c
  352.  
  353. rt-config.o    :    rt-config.c $(INCLUDES)
  354.     $(CC) $(CPPFLAGS) $(CFLAGS) rt-config.c
  355.  
  356. sound.o        :    sound.c $(INCLUDES)
  357.     $(CC) $(CPPFLAGS) $(CFLAGS) sound.c
  358.  
  359. pokey11.o    :    pokey11.c pokey11.h
  360.     $(CC) $(CPPFLAGS) $(CFLAGS) pokey11.c
  361.  
  362. clean    :
  363.     rm -f core
  364.     rm -f *.o
  365.     rm -f atari800
  366.  
  367. realclean    :
  368.     rm -f configure
  369.     rm -f config.h
  370.     rm -f core
  371.     rm -f *.o
  372.     rm -f atari800
  373.     
  374.  
  375. install-svgalib : install
  376.     chown root.root ${BIN_PATH}/atari800
  377.     chmod 4755 ${BIN_PATH}/atari800
  378.  
  379. install :
  380.     cp atari800 ${BIN_PATH}/atari800
  381.     cp atari800.man ${MAN_PATH}/man1/atari800.1
  382.