83 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			83 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
|   | # Mf-base | ||
|  | # Copyright 1984-2017 Cisco Systems, Inc. | ||
|  | #  | ||
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
|  | # you may not use this file except in compliance with the License. | ||
|  | # You may obtain a copy of the License at | ||
|  | #  | ||
|  | # http://www.apache.org/licenses/LICENSE-2.0 | ||
|  | #  | ||
|  | # Unless required by applicable law or agreed to in writing, software | ||
|  | # distributed under the License is distributed on an "AS IS" BASIS, | ||
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
|  | # See the License for the specific language governing permissions and | ||
|  | # limitations under the License. | ||
|  | 
 | ||
|  | include Mf-config | ||
|  | export CC CFLAGS LD LDFLAGS | ||
|  | 
 | ||
|  | Include=../boot/$m | ||
|  | PetiteBoot=../boot/$m/petite.boot | ||
|  | SchemeBoot=../boot/$m/scheme.boot | ||
|  | Main=../boot/$m/main.$o | ||
|  | Scheme=../bin/$m/scheme | ||
|  | 
 | ||
|  | # One of these sets is referenced in Mf-config to select between | ||
|  | # linking with kernel.o or libkernel.a | ||
|  | 
 | ||
|  | KernelO=../boot/$m/kernel.$o | ||
|  | KernelOLinkDeps= | ||
|  | KernelOLinkLibs= | ||
|  | 
 | ||
|  | KernelLib=../boot/$m/libkernel.a | ||
|  | KernelLibLinkDeps=${zlibDep} ${LZ4Dep} | ||
|  | KernelLibLinkLibs=${zlibLib} ${LZ4Lib} | ||
|  | 
 | ||
|  | kernelsrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-ocd.c gc-oce.c\ | ||
|  |  number.c schsig.c io.c new-io.c print.c fasl.c stats.c foreign.c prim.c prim5.c flushcache.c\ | ||
|  |  schlib.c thread.c expeditor.c scheme.c compress-io.c | ||
|  | 
 | ||
|  | kernelobj=${kernelsrc:%.c=%.$o} ${mdobj} | ||
|  | 
 | ||
|  | kernelhdr=system.h types.h version.h globals.h externs.h segment.h gc.c sort.h thread.h config.h compress-io.h itest.c nocurses.h | ||
|  | 
 | ||
|  | mainsrc=main.c | ||
|  | 
 | ||
|  | mainobj:=${mainsrc:%.c=%.$o} | ||
|  | 
 | ||
|  | doit: ${Scheme} | ||
|  | 
 | ||
|  | source: ${kernelsrc} ${kernelhdr} ${mdsrc} ${mainsrc} | ||
|  | 
 | ||
|  | ${Main}: ${mainobj} | ||
|  | 	cp -p ${mainobj} ${Main} | ||
|  | 
 | ||
|  | rootsrc=$(shell cd ../../c; echo *) | ||
|  | ${rootsrc}: | ||
|  | ifeq ($(OS),Windows_NT) | ||
|  | 	cp -p ../../c/$@ $@ | ||
|  | else | ||
|  | 	ln -s ../../c/$@ $@ | ||
|  | endif | ||
|  | 
 | ||
|  | scheme.o: itest.c | ||
|  | scheme.o main.o: config.h | ||
|  | ${kernelobj}: system.h types.h version.h externs.h globals.h segment.h thread.h sort.h compress-io.h nocurses.h | ||
|  | ${kernelobj}: ${Include}/equates.h ${Include}/scheme.h | ||
|  | ${mainobj}: ${Include}/scheme.h | ||
|  | ${kernelobj}: ${zlibHeaderDep} ${LZ4HeaderDep} | ||
|  | gc-011.o gc-ocd.o gc-oce.o: gc.c | ||
|  | 
 | ||
|  | ../zlib/zlib.h ../zlib/zconf.h: ../zlib/configure.log | ||
|  | 
 | ||
|  | ../zlib/libz.a: ../zlib/configure.log | ||
|  | 	(cd ../zlib; ${MAKE}) | ||
|  | 
 | ||
|  | LZ4Sources=../lz4/lib/lz4.h ../lz4/lib/lz4frame.h \ | ||
|  |            ../lz4/lib/lz4.c ../lz4/lib/lz4frame.c \ | ||
|  |            ../lz4/lib/lz4hc.c ../lz4/lib/xxhash.c | ||
|  | 
 | ||
|  | clean: | ||
|  | 	rm -f *.$o ${mdclean} | ||
|  | 	rm -f Make.out |