src/Tools/8bit/Makefile
changeset 1826 2a2c0dbeb4ac
child 1856 09c90fdcd9f2
equal deleted inserted replaced
1825:88d4c33d7947 1826:2a2c0dbeb4ac
       
     1 ###############################################
       
     2 # Title:      Tools/8bit/Makefile
       
     3 # ID:         $Id$
       
     4 # Author:     Franz Regensburger
       
     5 # Copyright   1996 TU Muenchen
       
     6 #
       
     7 # Master Makefile for Isabelle 8bit package
       
     8 # ATTENTION: this is a GNU-MAKE Makefile
       
     9 #
       
    10 # Franz Regensburger <regensbu@informatik.tu-muenchen.de>, 8.3.95
       
    11 # last changed:
       
    12 #	21.3.95	
       
    13 #	02.09.95 added latex2e support	
       
    14 #       07.02.96 added BASH variable and changed reference to amssym 
       
    15 #                in amssymb for latex2.09
       
    16 #       23.05.96 modifications by David von Oheimb
       
    17 #
       
    18 ###############################################
       
    19 
       
    20 # operate silently
       
    21 MAKEFLAGS='s'
       
    22 
       
    23 ###############################################
       
    24 # general configuration
       
    25 ###############################################
       
    26 
       
    27 # path and name of bash shell
       
    28 # should be /bin/bash on every reasonable system 
       
    29 #
       
    30 #BASH=/bin/bash
       
    31 BASH=/bin/bash
       
    32 
       
    33 # Perl path and name for interpreter
       
    34 # should be a perl 4.x
       
    35 #PERL=/usr/bin/perl
       
    36 PERL=/usr/local/dist/DIR/perl4/bin/perl
       
    37 
       
    38 # use LaTeX2e instead of LaTeX 2.09
       
    39 # this flag is currently only sensible for perl script gen-isadoc
       
    40 # set to empty string for LaTeX 2.09
       
    41 #USE2E='-2e'
       
    42 USE2E='-2e'
       
    43 
       
    44 # name of GNU make utility: `make' on linux box; `gmake' on solaris
       
    45 #GMAKE=make
       
    46 GMAKE=gmake
       
    47 
       
    48 #keycode for Super_L       26 on SUN, 64  on Linux box 
       
    49 #SUPER_L=64
       
    50 SUPER_L=26
       
    51 
       
    52 #keycode for Hyper_R       20 on SUN, 113 on Linux box 
       
    53 #HYPER_R=113
       
    54 HYPER_R=20
       
    55 
       
    56 CONFIGFIlES = config/Makefile config/key-table.inp config/conv-tables.inp
       
    57 
       
    58 ###############################################
       
    59 # configuration for configuration files in ./config
       
    60 ###############################################
       
    61 
       
    62 CONV_SOURCE_DIR="$(ISABELLE8BIT)/c-sources/isa2latex"
       
    63 
       
    64 ###############################################
       
    65 # configuration for GNU emacs
       
    66 ###############################################
       
    67 
       
    68 # Name of your GNU emacs executable 
       
    69 GNU_ENAME=emacs
       
    70 
       
    71 #users init file ($HOME is added). This file is loaded after
       
    72 #the init file isa_gnu_emacs.emacs 
       
    73 GNU_INIT=.emacs_gnu_isa
       
    74 
       
    75 ###############################################
       
    76 # configuration for xemacs
       
    77 ###############################################
       
    78 
       
    79 # Name of your xemacs executable 
       
    80 
       
    81 XEMACS_ENAME=xemacs
       
    82 
       
    83 #users init file ($HOME is added). This file is loaded after
       
    84 #the init file isa_xemacs.emacs 
       
    85 
       
    86 XEMACS_INIT=.emacs_xemacs_isa
       
    87 
       
    88 ###############################################
       
    89 # END of Configuration Section 
       
    90 ###############################################
       
    91 
       
    92 
       
    93 ###############################################
       
    94 # user targets        
       
    95 ###############################################
       
    96  
       
    97 # ----------------------------------------------------
       
    98 
       
    99 # first target. Used if no target is given by the user
       
   100 #usage:
       
   101 #	echo "type 'make install' to install everything"
       
   102 #	echo "type 'make clean' to cleanup"
       
   103 
       
   104 # ----------------------------------------------------
       
   105 
       
   106 all:  $(CONFIGFIlES)\
       
   107 	bin/gen-isa2latex bin/gen-isaterm bin/gen-isavim bin/gen-isaaxe\
       
   108 	bin/gen-isa_gnu_emacs bin/gen-isa_xemacs bin/gen-isadoc\
       
   109 	configuration a2isa bin/isa2latex bin/a2isa\
       
   110 	bin/isa_gnu_emacs bin/isa_xemacs bin/isavim bin/isaaxe\
       
   111 	bin/isaterm bin/isa_xmosaic bin/isapal bin/codetable bin/patcher\
       
   112 	fonts/install keyboard/install\
       
   113 	manual
       
   114 
       
   115 # ----------------------------------------------------
       
   116 
       
   117 clean:
       
   118 	cd bin; rm -f *
       
   119 	cd c-sources/a2isa; $(GMAKE) clean
       
   120 	cd c-sources/isa2latex; $(GMAKE) clean
       
   121 	cd doc; rm -f *.log *.aux
       
   122 
       
   123 ###############################################
       
   124 # internal targets        
       
   125 ###############################################
       
   126 
       
   127 ####### configuration files and the Makefile
       
   128 
       
   129 $(CONFIGFIlES): Makefile
       
   130 	@echo "configuring the configuration files"
       
   131 	@cd config;\
       
   132 	$(PERL) -pi \
       
   133 		-e "s#^USE2E\s*=.*#USE2E= $(USE2E)#g;" \
       
   134 		Makefile
       
   135 	@cd config;\
       
   136 	$(PERL) -pi \
       
   137 		-e "s#^BIN_DIR\s*\".*#BIN_DIR \"$(CONV_BIN_DIR)\"#g;" \
       
   138 		key-table.inp
       
   139 	@cd config;\
       
   140 	$(PERL) -pi \
       
   141 	-e "s#^CONV_SOURCE_DIR\s*\".*#CONV_SOURCE_DIR \"$(CONV_SOURCE_DIR)\"#g;" \
       
   142 	 conv-tables.inp
       
   143 
       
   144 #######      Generators        
       
   145 
       
   146 # ----------------------------------------------------
       
   147 	
       
   148 bin/gen-isa2latex: Makefile #perl/generators/gen-isa2latex.pl
       
   149 	@echo "configuring gen-isa2latex"
       
   150 	@cd perl/generators;\
       
   151 	$(PERL) -pi \
       
   152 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   153 		gen-isa2latex.pl
       
   154 	@rm -f bin/gen-isa2latex;\
       
   155 	ln -s ../perl/generators/gen-isa2latex.pl bin/gen-isa2latex
       
   156 
       
   157 # ----------------------------------------------------
       
   158 	
       
   159 bin/gen-isaterm: Makefile #perl/generators/gen-isaterm.pl
       
   160 	@echo "configuring gen-isaterm"
       
   161 	@cd perl/generators;\
       
   162 	$(PERL) -pi \
       
   163 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   164 		gen-isaterm.pl
       
   165 	@rm -f bin/gen-isaterm;\
       
   166 	ln -s ../perl/generators/gen-isaterm.pl bin/gen-isaterm
       
   167 
       
   168 # ----------------------------------------------------
       
   169 	
       
   170 bin/gen-isavim: Makefile #perl/generators/gen-isavim.pl
       
   171 	@echo "configuring gen-isavim"
       
   172 	@cd perl/generators;\
       
   173 	$(PERL) -pi \
       
   174 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   175 		gen-isavim.pl
       
   176 	@rm -f bin/gen-isavim;\
       
   177 	ln -s ../perl/generators/gen-isavim.pl bin/gen-isavim
       
   178 
       
   179 # ----------------------------------------------------
       
   180 	
       
   181 bin/gen-isaaxe: Makefile #perl/generators/gen-isaaxe.pl
       
   182 	@echo "configuring gen-isaaxe"
       
   183 	@cd perl/generators;\
       
   184 	$(PERL) -pi \
       
   185 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   186 		gen-isaaxe.pl
       
   187 	@rm -f bin/gen-isaaxe;\
       
   188 	ln -s ../perl/generators/gen-isaaxe.pl bin/gen-isaaxe
       
   189 
       
   190 # ----------------------------------------------------
       
   191 	
       
   192 bin/gen-isa_gnu_emacs: Makefile #perl/generators/gen-isa_gnu_emacs.pl
       
   193 	@echo "configuring gen-isa_gnu_emacs"
       
   194 	@cd perl/generators;\
       
   195 	$(PERL) -pi \
       
   196 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   197 		gen-isa_gnu_emacs.pl
       
   198 	@rm -f bin/gen-isa_gnu_emacs;\
       
   199 	ln -s ../perl/generators/gen-isa_gnu_emacs.pl bin/gen-isa_gnu_emacs
       
   200 
       
   201 # ----------------------------------------------------
       
   202 	
       
   203 bin/gen-isa_xemacs: Makefile #perl/generators/gen-isa_xemacs.pl
       
   204 	@echo "configuring gen-isa_xemacs"
       
   205 	@cd perl/generators;\
       
   206 	$(PERL) -pi \
       
   207 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   208 		gen-isa_xemacs.pl
       
   209 	@rm -f bin/gen-isa_xemacs;\
       
   210 	ln -s ../perl/generators/gen-isa_xemacs.pl bin/gen-isa_xemacs
       
   211 
       
   212 # ----------------------------------------------------
       
   213 	
       
   214 bin/gen-isadoc: Makefile #perl/generators/gen-isadoc.pl
       
   215 	@echo "configuring gen-isadoc"
       
   216 	@cd perl/generators;\
       
   217 	$(PERL) -pi \
       
   218 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   219 		gen-isadoc.pl
       
   220 	@rm -f bin/gen-isadoc;\
       
   221 	ln -s ../perl/generators/gen-isadoc.pl bin/gen-isadoc
       
   222 
       
   223 
       
   224 #######      Converter        
       
   225 
       
   226 # ----------------------------------------------------
       
   227 	
       
   228 #isa2latex, editor support, font documentation:
       
   229 configuration:
       
   230 	@cd config; $(GMAKE)
       
   231 
       
   232 a2isa:
       
   233 	@cd c-sources/a2isa; $(GMAKE); $(GMAKE) clean
       
   234 
       
   235 bin/isa2latex: c-sources/isa2latex/isa2latex
       
   236 	@echo "installing isa2latex"
       
   237 	@rm -f bin/isa2latex;\
       
   238 	ln -s ../c-sources/isa2latex/isa2latex bin/isa2latex
       
   239 
       
   240 bin/a2isa: c-sources/a2isa/a2isa
       
   241 	@echo "installing a2isa"
       
   242 	@rm -f bin/a2isa;\
       
   243 	ln -s ../c-sources/a2isa/a2isa bin/a2isa
       
   244 
       
   245 #######      Editors        
       
   246 
       
   247 # ----------------------------------------------------
       
   248 	
       
   249 bin/isa_gnu_emacs: Makefile #gnu_emacs/isa_gnu_emacs
       
   250 	@echo "installing GNU emacs"
       
   251 	@cd gnu_emacs;\
       
   252 	$(PERL) -pi \
       
   253 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   254 		-e "s#^ENAME\s*=.*#ENAME=$(GNU_ENAME)#g;"\
       
   255 		-e "s#^INIT\s*=.*#INIT=$(GNU_INIT)#g;" \
       
   256 		isa_gnu_emacs
       
   257 	@rm -f bin/isa_gnu_emacs;\
       
   258 	ln -s ../gnu_emacs/isa_gnu_emacs bin/isa_gnu_emacs
       
   259 
       
   260 # ----------------------------------------------------
       
   261 	
       
   262 bin/isa_xemacs: Makefile #xemacs/isa_xemacs
       
   263 	@echo "installing xemacs"
       
   264 	@@cd xemacs;\
       
   265 	$(PERL) -pi\
       
   266 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   267 		-e "s#^ENAME\s*=.*#ENAME=$(XEMACS_ENAME)#g;"\
       
   268 		-e "s#^INIT\s*=.*#INIT=$(XEMACS_INIT)#g;" \
       
   269 		isa_xemacs
       
   270 	@rm -f bin/isa_xemacs;\
       
   271 	ln -s ../xemacs/isa_xemacs bin/isa_xemacs
       
   272 
       
   273 # ----------------------------------------------------
       
   274 	
       
   275 bin/isavim: Makefile #vim/isavim
       
   276 	@echo "installing vim"
       
   277 	@@cd vim;\
       
   278 	$(PERL) -pi\
       
   279 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   280 		initvim ; \
       
   281 	$(PERL) -pi\
       
   282 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   283 		isavim
       
   284 	@rm -f bin/isavim;\
       
   285 	ln -s ../vim/isavim bin/isavim
       
   286 
       
   287 # ----------------------------------------------------
       
   288 	
       
   289 bin/isaaxe: Makefile #axe/isaaxe
       
   290 	@echo "installing axe"
       
   291 	@cd axe;\
       
   292 	$(PERL) -pi \
       
   293 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   294 		isaaxe
       
   295 	@rm -f bin/isaaxe;\
       
   296 	ln -s ../axe/isaaxe bin/isaaxe
       
   297 
       
   298 # ----------------------------------------------------
       
   299 	
       
   300 bin/isa_xmosaic: Makefile #xmosaic/isa_xmosaic
       
   301 	@echo "installing xmosaic"
       
   302 	@cd xmosaic;\
       
   303 	$(PERL) -pi\
       
   304 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   305 		isa_xmosaic
       
   306 	@rm -f bin/isa_xmosaic;\
       
   307 	ln -s ../xmosaic/isa_xmosaic bin/isa_xmosaic
       
   308 
       
   309 #######      Terminal        
       
   310 
       
   311 # ----------------------------------------------------
       
   312 
       
   313 bin/isaterm: Makefile #term/isaterm
       
   314 	@echo "installing term"
       
   315 	@cd term;\
       
   316 	$(PERL) -pi\
       
   317 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   318 		initisaterm;\
       
   319 	$(PERL) -pi\
       
   320 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   321 		isaterm
       
   322 	@rm -f bin/isaterm;\
       
   323 	ln -s ../term/isaterm bin/isaterm	
       
   324 
       
   325 #######      other perl scripts
       
   326 
       
   327 # ----------------------------------------------------
       
   328 
       
   329 bin/isapal: Makefile #perl/isapal.pl
       
   330 	@echo "installing perl script isapal"
       
   331 	@cd perl;\
       
   332 	$(PERL) -pi \
       
   333 		-e "s&^#!.*&#!$(PERL)&g;"\
       
   334 		isapal.pl
       
   335 	@rm -f bin/isapal;\
       
   336 	ln -s ../perl/isapal.pl bin/isapal
       
   337 
       
   338 bin/codetable: Makefile #perl/codetable.pl
       
   339 	@echo "installing perl script codetable"
       
   340 	@cd perl;\
       
   341 	$(PERL) -pi \
       
   342 		-e "s&^#!.*&#!$(PERL)&g;" \
       
   343 		codetable.pl
       
   344 	@rm -f bin/codetable;\
       
   345 	ln -s ../perl/codetable.pl bin/codetable
       
   346 
       
   347 bin/patcher: Makefile #perl/patcher.pl
       
   348 	@echo "installing perl script patcher"
       
   349 	@cd perl;\
       
   350 	$(PERL) -pi \
       
   351 	-e "s&^#!.*&#!$(PERL)&g;" \
       
   352 	patcher.pl
       
   353 	@rm -f bin/patcher;\
       
   354 	ln -s ../perl/patcher.pl bin/patcher
       
   355 
       
   356 fonts/install: Makefile
       
   357 	@cd fonts;\
       
   358 	$(PERL) -pi\
       
   359 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   360 		install
       
   361 
       
   362 keyboard/install: Makefile
       
   363 	@cd keyboard;\
       
   364 	$(PERL) -pi\
       
   365 		-e "s&^#!.*&#!$(BASH)&g;" \
       
   366 		-e "s#^SUPER_L\s*=.*#SUPER_L=$(SUPER_L)#g;"\
       
   367 		-e "s#^HYPER_R\s*=.*#HYPER_R=$(HYPER_R)#g;"\
       
   368 		install
       
   369 
       
   370 # ----------------------------------------------------
       
   371 
       
   372 manual:
       
   373 	@cd doc; $(GMAKE) manual.dvi clean