home *** CD-ROM | disk | FTP | other *** search
/ vsiftp.vmssoftware.com / VSIPUBLIC@vsiftp.vmssoftware.com.tar / FREEWARE / FREEWARE40.ZIP / xv310a / imakefile < prev    next >
Makefile  |  1995-06-12  |  6KB  |  273 lines

  1. /*
  2.  * be sure to check 'config.h' for a couple other configuration options
  3.  */
  4.  
  5.  
  6. /* if, for whatever reason, you're unable to get the JPEG library to compile
  7.  * on your machine, *COMMENT OUT* the following line
  8.  */
  9. #define HaveJpeg
  10.  
  11.  
  12. /* if, for whatever reason, you're unable to get the TIFF library to compile
  13.  * on your machine, *COMMENT OUT* the following line
  14.  */
  15. #define HaveTiff
  16.  
  17.  
  18. /* if, for whatever reason, you're unable to get the PDS/VICAR support
  19.  * to compile (xvpds.c, and vdcomp.c), *COMMENT OUT* the following line
  20.  */
  21. #define HavePDS
  22.  
  23.  
  24. /*
  25.  * if you are running on a SysV-based machine, such as HP, Silicon Graphics,
  26.  * etc, uncomment one of the following lines to get you *most* of the way
  27.  * there.  SYSV means System V R3.  One of these may be defined through your
  28.  * X11 config files anyway.
  29.  */
  30. /* UNIX = -DSVR4 */
  31. /* UNIX = -DSYSV */
  32.  
  33.  
  34.  
  35. /* If your machine has the 'usleep()' function, uncomment the following
  36.  * line.  If it doesn't, or you're not sure, don't uncomment the line
  37.  */
  38. /* TIMERS = -DUSLEEP */
  39.  
  40. /* if XV locks up whenever you click any button in the controls window,
  41.  * the Timer() function in xvmisc.c is going out-to-lunch.  A simple
  42.  * workaround is to uncomment the following line:
  43.  */
  44. /* TIMERS = -DNOTIMER */
  45.  
  46.  
  47.  
  48. /* if you are running under DXWM, I pity you.  XV doesn't work correctly
  49.  * under DXWM.  You should probably be running MWM.  However, if such is
  50.  * not a valid option for you, try uncommenting the following line.  The
  51.  * behavior won't be 'right', but it will be less 'wrong'.
  52.  */
  53. /* DXWM = -DDXWM */
  54.  
  55.  
  56.  
  57. /* if your system doesn't have u_long, u_short ... typedefined  
  58.  * uncomment the following line:
  59.  */
  60. /* BSDTYPES = -DBSDTYPES */
  61.  
  62.  
  63.  
  64. /* if your system *doesn't* have /usr/include/dirent.h, (ie, isn't POSIX
  65.  * compliant, then you may have to uncomment the following line to use the
  66.  * 'old-style' directory-handling structures
  67.  */
  68. /* NODIRENT = -DNODIRENT */
  69.  
  70.  
  71.  
  72. /* If your machine doesn't have the 'random()' function, and only
  73.  * has 'rand()', uncomment the following line:
  74.  */
  75. /* RAND= -DNO_RANDOM */
  76.  
  77.  
  78.  
  79. /* if your machine doesn't have 'vprintf()' or 'vsprintf()'
  80.  *   see vprintf.c for more information, if needed.
  81.  */
  82. #if defined(VaxArchitecture) && !defined(UltrixArchitecture)
  83. VPRINTF=    -DNEED_VPRINTF -DINTSPRINTF -DLONGINT -DNOVOID
  84. #else 
  85. #  if defined(RtArchitecture) && !defined(AIXArchitecture)
  86. VPRINTF=    -DNEED_VPRINTF -DINTSPRINTF -DLONGINT -DNOSTDHDRS -U__STDC__
  87. #  else
  88. #    if defined(SequentArchitecture)
  89. VPRINTF= -DNEED_VPRINTF -DLONGINT -DNOSTDHDRS
  90. #    endif
  91. #  endif
  92. #endif
  93.  
  94.  
  95.  
  96. /* If you are using an HP running HPUX 7.0, the following should be active */
  97. #if defined(HPArchitecture) && (OSMajorVersion == 7)
  98. HPUX7 = -DSYSV +Ns4000 -DHPUX7
  99. #endif
  100.  
  101.  
  102. /* If you are using an SGI machine, the following should be active */
  103. #ifdef SGIArchitecture
  104. SGI = -Dsgi
  105. #endif
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112. /* This marks the end of the configuration parameters */
  113.  
  114.  
  115.  
  116.  
  117.  
  118. #ifdef HaveJpeg
  119. JPEG = -DDOJPEG
  120. JPEGDIR = jpeg
  121. LIBJPEG = $(JPEGDIR)/libjpeg.a
  122. JPEGINCLUDE = -I$(JPEGDIR)
  123. #endif
  124.  
  125. #ifdef HaveTiff
  126. TIFF = -DDOTIFF
  127. TIFFDIR = tiff
  128. LIBTIFF = $(TIFFDIR)/libtiff.a
  129. TIFFINCLUDE = -I$(TIFFDIR)
  130. #endif
  131.  
  132. #ifdef HavePDS
  133. PDS = -DDOPDS
  134. #endif
  135.  
  136.  
  137. #if defined(SCOArchitecture)
  138. SCO= -Dsco -DPOSIX -DNO_RANDOM 
  139. SYS_LIBRARIES=        -lm -lc -lx 
  140. #else
  141. SYS_LIBRARIES=        -lm
  142. #endif
  143.  
  144.  
  145. DEPLIBS = $(LIBJPEG) $(LIBTIFF)
  146. LOCAL_LIBRARIES = $(XLIB) $(DEPLIBS)
  147.  
  148. DEFINES= $(SCO) $(UNIX) $(NODIRENT) $(VPRINTF) $(TIMERS) \
  149.     $(HPUX7) $(JPEG) $(TIFF) $(PDS) $(DXWM) $(RAND) \
  150.     $(BACKING_STORE) $(BSDTYPES) $(SGI)
  151.  
  152. INCLUDES = $(JPEGINCLUDE) $(TIFFINCLUDE)
  153.  
  154. SRCS1 =    xv.c xvevent.c xvroot.c xvmisc.c xvimage.c xvcolor.c xvsmooth.c \
  155.     xv24to8.c xvgif.c xvpm.c xvinfo.c xvctrl.c xvscrl.c xvalg.c \
  156.     xvgifwr.c xvdir.c xvbutt.c xvpbm.c xvxbm.c xvgam.c xvbmp.c \
  157.     xvdial.c xvgraf.c xvsunras.c xvjpeg.c xvps.c xvpopup.c xvdflt.c \
  158.     xvtiff.c xvtiffwr.c xvpds.c xvrle.c xviris.c xvgrab.c vprintf.c \
  159.     xvbrowse.c xvtext.c xvpcx.c xviff.c xvtarga.c xvxpm.c xvcut.c \
  160.     xvxwd.c xvfits.c
  161.  
  162. OBJS1 =    xv.o xvevent.o xvroot.o xvmisc.o xvimage.o xvcolor.o xvsmooth.o \
  163.     xv24to8.o xvgif.o xvpm.o xvinfo.o xvctrl.o xvscrl.o xvalg.o \
  164.     xvgifwr.o xvdir.o xvbutt.o xvpbm.o xvxbm.o xvgam.o xvbmp.o \
  165.     xvdial.o xvgraf.o xvsunras.o xvjpeg.o xvps.o xvpopup.o xvdflt.o \
  166.     xvtiff.o xvtiffwr.o xvpds.o xvrle.o xviris.o xvgrab.o vprintf.o \
  167.     xvbrowse.o xvtext.o xvpcx.o xviff.o xvtarga.o xvxpm.o xvcut.o \
  168.     xvxwd.o xvfits.o
  169.  
  170. SRCS2=    bggen.c
  171. OBJS2=    bggen.o
  172.  
  173. #ifdef HavePDS
  174. SRCS3=    vdcomp.c
  175. OBJS3=    vdcomp.o
  176. #endif
  177.  
  178. SRCS4=    xcmap.c
  179. OBJS4=    xcmap.o
  180.  
  181. SRCS5=    xvpictoppm.c
  182. OBJS5=    xvpictoppm.o
  183.  
  184. PROGRAMS= xv bggen vdcomp xcmap xvpictoppm
  185.  
  186. all::
  187.     @echo ""
  188.     @echo "  Did you remember to 'make depend' first?"
  189.     @echo ""
  190.  
  191.  
  192. #if defined(HaveJpeg) || defined(HaveTiff)
  193. #  ifdef HaveJpeg
  194. #    ifdef HaveTiff
  195.        SUBDIRS = tiff
  196. #    else
  197.        SUBDIRS = 
  198. #    endif
  199. #  else
  200.      SUBDIRS = tiff
  201. #  endif
  202. #  define PassCDebugFlags
  203. #  define IHaveSubdirs
  204. #endif
  205.  
  206.  
  207. all::
  208.     @echo "  building xv ..."
  209.     @echo ""
  210.  
  211.  
  212. #ifdef HaveJpeg
  213. $(LIBJPEG):
  214.     cd $(JPEGDIR); $(MAKE) libjpeg.a
  215.  
  216. clean::
  217.     @echo ""
  218.     @echo "  cleaning in $(JPEGDIR) ..."
  219.     @echo ""
  220.     ( cd $(JPEGDIR) ; $(MAKE) clean )
  221.     @echo ""
  222. #endif
  223.  
  224. #ifdef HaveTiff
  225. $(LIBTIFF):
  226.     cd $(TIFFDIR); $(MAKE) libtiff.a
  227.  
  228. clean::
  229.     @echo "  cleaning in $(TIFFDIR) ..."
  230.     @echo ""
  231.     ( cd $(TIFFDIR) ; $(MAKE) clean )
  232.     @echo ""
  233. #endif
  234.  
  235.  
  236.  
  237. SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4)
  238.   
  239. AllTarget($(PROGRAMS))
  240. DependTarget()
  241. #ifdef IHaveSubdirs
  242.   DependSubdirs($(SUBDIRS))
  243. #endif
  244.  
  245.  
  246. NormalProgramTarget(xv,$(OBJS1),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  247. NormalProgramTarget(bggen,$(OBJS2),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  248. NormalProgramTarget(xcmap,$(OBJS4),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  249. NormalProgramTarget(xvpictoppm,$(OBJS5),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  250.  
  251.  
  252. InstallProgram(xv,$(BINDIR))
  253. InstallProgram(bggen,$(BINDIR))
  254. InstallProgram(xcmap,$(BINDIR))
  255. InstallProgram(xvpictoppm,$(BINDIR))
  256.  
  257. #ifdef HavePDS
  258. NormalProgramTarget(vdcomp,$(OBJS3),$(DEPLIBS),$(LOCAL_LIBRARIES),)
  259. InstallProgram(vdcomp,$(BINDIR))
  260. #endif
  261.  
  262.  
  263. InstallManPageLong(docs/xv,$(MANDIR),xv)
  264. InstallManPageLong(docs/bggen,$(MANDIR),bggen)
  265. InstallManPageLong(docs/xcmap,$(MANDIR),xcmap)
  266. InstallManPageLong(docs/xvp2p,$(MANDIR),xvpictoppm)
  267. InstallManPageLong(docs/vdcomp,$(MANDIR),vdcomp)
  268.  
  269. tar:
  270.     tar cf xv.tar Makefile* Imakefile *.c *.h bits docs \
  271.          docs unsupt vms $(JPEGDIR) $(TIFFDIR) $(MISC)
  272.  
  273.