Makefile 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. #
  2. # MAKEFILE for Rigal in C, version 4.45.1
  3. #
  4. # C compiler to use (Compiler path can be changed by the user)
  5. CCFLAGS = -g -D LE -m32
  6. PCA = cc $(CCFLAGS) -c -D xsun=1 -I../include/
  7. # Specify -DLE for Little-endian architectures (Big-endian is default)!
  8. # Specify -Dbbs for BBS-version of scaner (LaTeX version is default)!
  9. LIBS = -lm
  10. # This is for sin, cos, sqrt etc.
  11. # Other things are usually not changed by the user
  12. .INIT: check$(rig)
  13. # -------------------------------------------------
  14. # MACRO DEFINITIONS
  15. # -----------------------------------------------
  16. # Object files for "rc"
  17. RCF_SRC = defsun3.o ley_.o nef2.o ou2.o sevice.o
  18. # They are in src/ subdirectory
  19. # Object files for "ic"
  20. ICF_SRC = cim.o defsun3.o erm.o ic.o ley_.o scan.o scanmif.o usemod.o nef2.o ou2.o sevice.o
  21. # Object files for "rc -c" (library)
  22. CCF_SRC = defsun3.o ley_.o scan.o scanmif.o usemod.o c1.o c2.o c3.o c4.o nef2.o ou2.o sevice.o
  23. DISTLIB = defsun3.c ley_.c scan.c scanmif.c usemod.c c1.c c2.c c3.c c4.c nef2.c ou2.c sevice.c
  24. # All include files
  25. INCLIB_SRC = ../include/c1.h ../include/define.h \
  26. ../include/defpage.h ../include/ley.h \
  27. ../include/scan.h ../include/cim.h \
  28. ../include/def180.h ../include/nef2.h\
  29. ../include/usemod.h ../include/globrig.h
  30. #--------------------------------------------------------
  31. # TARGET DEFINITIONS
  32. #---------------------------------------------------------
  33. # Normally builds all necessary after unpack and performs test.
  34. normal: bins ../lib/riglib.a ../bin/anrig ../bin/genrigd ../bin/rig_lint test clean
  35. bins: bin ../bin/rc ../bin/ic ../bin/v
  36. bin:
  37. -mkdir ../bin
  38. ../bin/rc:$(RCF_SRC) rc_.o
  39. cc $(CCFLAGS) -o ../bin/rc rc_.o $(RCF_SRC)
  40. ../bin/ic:$(ICF_SRC)
  41. cc $(CCFLAGS) -o ../bin/ic $(ICF_SRC) $(LIBS)
  42. ../bin/v:$(RCF_SRC) v.o
  43. cc $(CCFLAGS) -o ../bin/v v.o $(RCF_SRC) $(LIBS)
  44. ../lib/riglib.a:$(CCF_SRC)
  45. @echo '*Starting creating library'
  46. -mkdir ../lib
  47. -rm -f ../lib/riglib.a
  48. ar rv ../lib/riglib.a $(CCF_SRC)
  49. -ranlib ../lib/riglib.a
  50. @echo '*Library created'
  51. ../bin/anrig:$(INCLIB_SRC) ../lib/riglib.a
  52. cc $(CCFLAGS) -w \
  53. -Ianrig/ -I../include/\
  54. anrig/xcrg.c anrig/xcrg_0.c\
  55. anrig/xcrg_1.c\
  56. anrig/xcrg_2.c\
  57. anrig/xcrg_3.c\
  58. anrig/xcrg_4.c\
  59. anrig/xcrg_5.c\
  60. anrig/xcrg_6.c\
  61. anrig/xcrg_7.c\
  62. anrig/xcrg_8.c\
  63. anrig/xcrg_9.c\
  64. -o ../bin/anrig ../lib/riglib.a $(LIBS)
  65. -rm -f anrig/*.o
  66. ../bin/genrigd:$(INCLIB_SRC) ../lib/riglib.a
  67. cc $(CCFLAGS) -w \
  68. -Igenrig/ -I../include/\
  69. genrig/xcrg.c\
  70. genrig/xcrg_1.c\
  71. genrig/xcrg_2.c\
  72. genrig/xcrg_3.c\
  73. genrig/xcrg_4.c\
  74. genrig/xcrg_5.c\
  75. genrig/xcrg_6.c\
  76. genrig/xcrg_7.c\
  77. genrig/xcrg_8.c\
  78. genrig/xcrg_9.c\
  79. genrig/xcrg_10.c\
  80. -o ../bin/genrigd ../lib/riglib.a $(LIBS)
  81. -rm -f genrig/*.o
  82. ../bin/rig_lint: ../lint/rig_lint.rig ../bin/rc ../lib/riglib.a ../bin/anrig ../bin/genrigd
  83. (cd ../lint;../bin/rc rig_lint -c -P '-O';cd ..)
  84. -mv ../lint/rig_lint ../bin/
  85. test: ../test/rigcrf.rig ../bin/rc ../lib/riglib.a ../bin/anrig ../bin/genrigd
  86. (cd ../test;\
  87. $(rig)/rc rigcrf;\
  88. $(rig)/ic rigcrf rigcrf;\
  89. $(rig)/rc rigcrf -c;\
  90. rigcrf rigcrf)
  91. ##------------------ Hidden possibilities
  92. z: anrigz genrigz
  93. anrigz:
  94. (cd anrig;\
  95. ../../bin/rc anrig;\
  96. ../../bin/anrig;\
  97. ../../bin/genrigd S -p N.TMP;\
  98. /bin/rm *.RC2 *.RC4 *.TMP)
  99. genrigz:
  100. (cd genrig;\
  101. ../../bin/rc genrigd;\
  102. ../../bin/anrig;\
  103. ../../bin/genrigd S -p N.TMP;\
  104. /bin/rm *.RC2 *.RC4 *.TMP)
  105. ##---------------------------------------
  106. VERSION = 446
  107. tar: clean
  108. -rm -f ../rigsc.$(VERSION).tar.Z
  109. (cd ..;tar -cvf rigsc.$(VERSION).tar include src examples lint doc test)
  110. compress ../rigsc.$(VERSION).tar
  111. cp ../rigsc.$(VERSION).tar.Z /info/ftp/pub/labs/pelab/rigal/
  112. ##--------------------------------------
  113. clean:
  114. mv ../test/rigcrf.rig .
  115. -rm -f *.o */*.o *.RC2 */*.RC2 *.RC4 */*.RC4 */*.rsc ../lint/*.o ../lint/*.RC2 ../lint/*.RC4 \
  116. ../examples/hanoi ../*/*.rsc ../*/*.out ../*/*/*.out ../test/*
  117. mv rigcrf.rig ../test/
  118. ##--------------------------------------
  119. .c.o: $(INCLIB_SRC)
  120. $(PCA) $< -o $@
  121. check:
  122. @echo '********************************************************'
  123. @echo '*' User ERROR: you have not set \"rig\" environment variable to $(PWD)/../bin
  124. @echo '********************************************************'
  125. ____FATAL___ERROR___
  126. check$(rig):
  127. @echo VARIABLE rig have been set to $(rig)
  128. @echo ---------------------------------------
  129. ##----------------------------------------
  130. # Prepare distribution
  131. mkdist$(RFILE)$(RDIR):
  132. @echo '*** to prepare for distribution write make mkdist RFILE=fff RDIR=/u/vaden/xyz/xyz/'
  133. mkdist:
  134. (cd $(RDIR);\
  135. $(rig)/rc $(RFILE);\
  136. $(rig)/anrig;\
  137. $(rig)/genrigd S -p N.TMP;\
  138. /bin/rm *.RC2 *.RC4 *.TMP)
  139. cp ../include/* $(RDIR)
  140. cp $(DISTLIB) $(RDIR)
  141. (cd $(RDIR);\
  142. echo 'cc -O -w -D xsun=1 ' $(DISTLIB) ' xc*.c -o ' $(RFILE) $(LIBS) > cmd)
  143. mkdist2:
  144. (cd $(RDIR);\
  145. cc -O -w -D xsun=1 $(DISTLIB) xc*.c -o $(RFILE) $(LIBS) ;/bin/rm *.o)