mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-23 20:15:05 +02:00
Since commit 15a8f2cfe5
the build order
must be as follows:
1. Bootstrap cyclone.scm using a pre-existing compiler.
2. Using cyclone from the previous step, build all libraries.
3. Using the artifacts from the previous two steps, build
icyc, examples, and tests.
This commit updates the Makefile prerequisites accordingly to reflect
this change in build order. Otherwise, Cyclone does not correctly
compile in parallel build mode with `-jN`.
333 lines
13 KiB
Makefile
333 lines
13 KiB
Makefile
# Cyclone Scheme
|
|
# Copyright (c) 2014-2020, Justin Ethier
|
|
# All rights reserved.
|
|
|
|
include Makefile.config
|
|
|
|
# Commands
|
|
#
|
|
# Set up Cyclone here to build the compiler itself using a system-installed
|
|
# compiler (EG: from bootstrap or an earlier cyclone version). Everything
|
|
# else can then be built using our local binary.
|
|
CYCLONE_SYSTEM = cyclone -A .
|
|
CYCLONE_LOCAL = ./cyclone -A . -COPT '-Iinclude' -CLNK '-L.'
|
|
CCOMP = $(CC) $(CFLAGS)
|
|
INDENT_CMD = indent -linux -l80 -i2 -nut
|
|
|
|
# Libraries
|
|
CYC_RT_LIB = libcyclone.a
|
|
CYC_BN_LIB = libcyclonebn.a
|
|
CYC_BN_LIB_SUBDIR = third-party/libtommath-1.2.0
|
|
CYC_LIBS = $(CYC_RT_LIB) $(CYC_BN_LIB)
|
|
|
|
# Directories
|
|
BOOTSTRAP_DIR = ../cyclone-bootstrap
|
|
SCHEME_DIR = scheme
|
|
EXAMPLE_DIR = examples
|
|
HEADER_DIR = include/cyclone
|
|
TEST_DIR = tests
|
|
|
|
# Source files
|
|
SLDFILES = $(wildcard $(SCHEME_DIR)/*.sld) \
|
|
$(wildcard srfi/*.sld) \
|
|
$(wildcard libs/cyclone/*.sld) \
|
|
$(wildcard $(SCHEME_DIR)/cyclone/*.sld)
|
|
COBJECTS = $(SLDFILES:.sld=.o)
|
|
HEADERS = $(HEADER_DIR)/runtime.h $(HEADER_DIR)/types.h
|
|
TEST_SRC = $(TEST_DIR)/unit-tests.scm \
|
|
$(TEST_DIR)/base.scm \
|
|
$(TEST_DIR)/test.scm \
|
|
$(TEST_DIR)/threading.scm \
|
|
$(TEST_DIR)/test-shared-queue.scm \
|
|
$(TEST_DIR)/macro-hygiene.scm \
|
|
$(TEST_DIR)/match-tests.scm \
|
|
$(TEST_DIR)/srfi-28-tests.scm \
|
|
$(TEST_DIR)/srfi-60-tests.scm \
|
|
$(TEST_DIR)/srfi-121-tests.scm \
|
|
$(TEST_DIR)/srfi-128-162-tests.scm \
|
|
$(TEST_DIR)/srfi-143-tests.scm
|
|
TESTS = $(basename $(TEST_SRC))
|
|
|
|
# Primary rules (of interest to an end user)
|
|
|
|
all : cyclone icyc libs
|
|
|
|
test : libs $(TESTS)
|
|
|
|
example :
|
|
cd $(EXAMPLE_DIR) ; $(MAKE)
|
|
cd $(EXAMPLE_DIR)/call-scm-from-c ; $(MAKE)
|
|
|
|
clean :
|
|
rm -rf test.txt a.out *.so *.o *.a *.out tags cyclone icyc scheme/*.o scheme/*.so scheme/*.c scheme/*.meta srfi/*.c srfi/*.meta srfi/*.o srfi/*.so scheme/cyclone/*.o scheme/cyclone/*.so scheme/cyclone/*.c scheme/cyclone/*.meta libs/cyclone/*.o libs/cyclone/*.so libs/cyclone/*.c libs/cyclone/*.meta cyclone.c dispatch.c icyc.c generate-c.c generate-c
|
|
cd $(EXAMPLE_DIR) ; $(MAKE) clean
|
|
rm -rf html tests/*.o tests/*.c
|
|
rm -f tests/srfi-28-tests
|
|
rm -f tests/srfi-60-tests
|
|
rm -f tests/srfi-121-tests
|
|
rm -f tests/srfi-143-tests
|
|
rm -f tests/macro-hygiene
|
|
rm -f tests/match-tests
|
|
cd $(CYC_BN_LIB_SUBDIR) ; $(MAKE) clean
|
|
|
|
install : libs install-libs install-includes install-bin
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/cyclone
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/srfi
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/srfi/list-queues
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/srfi/sets
|
|
$(MKDIR) $(DESTDIR)$(DATADIR)/srfi/sorting
|
|
$(INSTALL) -m0644 scheme/*.sld $(DESTDIR)$(DATADIR)/scheme
|
|
$(INSTALL) -m0644 scheme/*.o $(DESTDIR)$(DATADIR)/scheme
|
|
$(INSTALL) -m0755 scheme/*.so $(DESTDIR)$(DATADIR)/scheme
|
|
$(INSTALL) -m0644 scheme/cyclone/*.sld $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(INSTALL) -m0644 scheme/cyclone/*.scm $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/test.meta $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/match.meta $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/foreign.meta $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 scheme/cyclone/*.o $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(INSTALL) -m0755 scheme/cyclone/*.so $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/*.sld $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/*.scm $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 libs/cyclone/*.o $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0755 libs/cyclone/*.so $(DESTDIR)$(DATADIR)/cyclone
|
|
$(INSTALL) -m0644 srfi/*.sld $(DESTDIR)$(DATADIR)/srfi
|
|
$(INSTALL) -m0644 srfi/*.o $(DESTDIR)$(DATADIR)/srfi
|
|
$(INSTALL) -m0755 srfi/*.so $(DESTDIR)$(DATADIR)/srfi
|
|
$(INSTALL) -m0644 srfi/*.meta $(DESTDIR)$(DATADIR)/srfi
|
|
$(INSTALL) -m0644 srfi/list-queues/*.scm $(DESTDIR)$(DATADIR)/srfi/list-queues
|
|
$(INSTALL) -m0644 srfi/sets/*.scm $(DESTDIR)$(DATADIR)/srfi/sets
|
|
$(INSTALL) -m0644 srfi/sorting/*.scm $(DESTDIR)$(DATADIR)/srfi/sorting
|
|
|
|
uninstall :
|
|
$(RM) $(DESTDIR)$(BINDIR)/cyclone
|
|
$(RM) $(DESTDIR)$(BINDIR)/icyc
|
|
$(RM) $(DESTDIR)$(LIBDIR)/$(CYC_RT_LIB)
|
|
$(RM) $(DESTDIR)$(LIBDIR)/$(CYC_BN_LIB)
|
|
$(RM) $(DESTDIR)$(INCDIR)/*.*
|
|
$(RMDIR) $(DESTDIR)$(INCDIR)
|
|
$(RM) $(DESTDIR)$(DATADIR)/scheme/cyclone/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/scheme/cyclone
|
|
$(RM) $(DESTDIR)$(DATADIR)/cyclone/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/cyclone
|
|
$(RM) $(DESTDIR)$(DATADIR)/srfi/list-queues/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/srfi/list-queues
|
|
$(RM) $(DESTDIR)$(DATADIR)/srfi/sets/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/srfi/sets
|
|
$(RM) $(DESTDIR)$(DATADIR)/srfi/sorting/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/srfi/sorting
|
|
$(RM) $(DESTDIR)$(DATADIR)/srfi/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/srfi
|
|
$(RM) $(DESTDIR)$(DATADIR)/scheme/*.*
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)/scheme
|
|
$(RMDIR) $(DESTDIR)$(DATADIR)
|
|
|
|
# Dev rules (of interest to people hacking on Cyclone's core)
|
|
|
|
tags :
|
|
ctags -R *
|
|
|
|
indent : gc.c runtime.c ffi.c mstreams.c $(HEADER_DIR)/*.h
|
|
$(INDENT_CMD) gc.c
|
|
$(INDENT_CMD) runtime.c
|
|
$(INDENT_CMD) ffi.c
|
|
$(INDENT_CMD) mstreams.c
|
|
$(INDENT_CMD) $(HEADER_DIR)/*.h
|
|
|
|
# This is a test directive used to test changes to a SLD file
|
|
# EG: make sld SLDPATH=scheme/cyclone SLD=macros
|
|
sld :
|
|
cyclone $(SLDPATH)/$(SLD).sld && sudo cp $(SLDPATH)/$(SLD).c /usr/local/share/cyclone/$(SLDPATH)/ && sudo cp $(SLDPATH)/$(SLD).sld /usr/local/share/cyclone/$(SLDPATH)/ && sudo cp $(SLDPATH)/$(SLD).o /usr/local/share/cyclone/$(SLDPATH)/ && cyclone cyclone.scm && cyclone icyc.scm && sudo $(MAKE) install-bin
|
|
|
|
debug :
|
|
sudo ls; cyclone scheme/cyclone/cgen.sld && sudo cp scheme/cyclone/cgen.* /usr/local/share/cyclone/scheme/cyclone/ && cyclone cyclone.scm && sudo $(MAKE) install-includes && sudo $(MAKE) install-libs && ./cyclone generate-c.scm
|
|
|
|
doc :
|
|
doxygen Doxyfile
|
|
|
|
# Helper rules (of interest to people hacking on this makefile)
|
|
|
|
.PHONY: clean full bench bootstrap tags indent debug test doc
|
|
|
|
$(TESTS) : %: %.scm cyclone libs
|
|
$(CYCLONE_LOCAL) -I . $<
|
|
./$@
|
|
rm -rf $@
|
|
|
|
$(EXAMPLES) : %: %.scm cyclone libs
|
|
$(CYCLONE_LOCAL) $<
|
|
|
|
game-of-life :
|
|
cd $(EXAMPLE_DIR)/game-of-life ; $(MAKE)
|
|
|
|
hello-library/hello :
|
|
cd $(EXAMPLE_DIR)/hello-library ; $(MAKE)
|
|
|
|
libs : $(COBJECTS)
|
|
|
|
$(COBJECTS) : %.o: %.sld cyclone
|
|
$(CYCLONE_LOCAL) $<
|
|
|
|
cyclone : cyclone.scm $(CYC_RT_LIB) $(CYC_BN_LIB)
|
|
$(CYCLONE_SYSTEM) cyclone.scm
|
|
|
|
icyc : icyc.scm $(CYC_RT_LIB) $(CYC_BN_LIB) cyclone libs
|
|
$(CYCLONE_LOCAL) $<
|
|
|
|
$(CYC_RT_LIB) : $(CFILES) $(HEADERS) $(CYC_BN_LIB)
|
|
|
|
$(CYC_BN_LIB) : $(CYC_BN_LIB_SUBDIR)/*.c
|
|
cd $(CYC_BN_LIB_SUBDIR) ; $(MAKE) LIBNAME=$(CYC_BN_LIB) && cp $(CYC_BN_LIB) ../..
|
|
|
|
hashset.o : hashset.c $(HEADERS)
|
|
$(CCOMP) -c $< -o $@
|
|
|
|
gc.o : gc.c $(HEADERS)
|
|
$(CCOMP) -std=gnu99 -c $< -o $@
|
|
|
|
ffi.o : ffi.c $(HEADERS)
|
|
$(CCOMP) -c $< -o $@
|
|
|
|
mstreams.o : mstreams.c $(HEADERS)
|
|
$(CCOMP) -c \
|
|
-DCYC_HAVE_OPEN_MEMSTREAM=$(CYC_PLATFORM_HAS_MEMSTREAM) \
|
|
-DCYC_HAVE_FMEMOPEN=$(CYC_PLATFORM_HAS_FMEMOPEN) \
|
|
$< -o $@
|
|
|
|
ifdef CYC_PTHREAD_SET_STACK_SIZE
|
|
DEF_PTHREAD_SET_STACK_SIZE=-DCYC_PTHREAD_SET_STACK_SIZE=$(CYC_PTHREAD_SET_STACK_SIZE)
|
|
else
|
|
DEF_PTHREAD_SET_STACK_SIZE=
|
|
endif
|
|
|
|
runtime.o : runtime.c $(HEADERS)
|
|
$(CCOMP) -c \
|
|
$(DEF_PTHREAD_SET_STACK_SIZE) \
|
|
-DCYC_INSTALL_DIR=\"$(PREFIX)\" \
|
|
-DCYC_INSTALL_LIB=\"$(LIBDIR)\" \
|
|
-DCYC_INSTALL_BIN=\"$(BINDIR)\" \
|
|
-DCYC_INSTALL_INC=\"$(INCDIR)\" \
|
|
-DCYC_INSTALL_SLD=\"$(DATADIR)\" \
|
|
-DCYC_CC_PROG=\"$(CC_PROG)\" \
|
|
-DCYC_CC_EXEC=\"$(CC_EXEC)\" \
|
|
-DCYC_CC_LIB=\"$(CC_LIB)\" \
|
|
-DCYC_CC_SO=\"$(CC_SO)\" \
|
|
-DCYC_PLATFORM=\"$(PLATFORM)\" \
|
|
$< -o $@
|
|
|
|
libcyclone.a : runtime.o gc.o ffi.o mstreams.o hashset.o
|
|
$(CREATE_LIBRARY_COMMAND) $(CREATE_LIBRARY_FLAGS) $@ $&
|
|
$(RANLIB_COMMAND)
|
|
# Instructions from: http://www.adp-gmbh.ch/cpp/gcc/create_lib.html
|
|
# Note compiler will have to link to this, eg:
|
|
#Linking against static library
|
|
#gcc -static main.c -L. -lmean -o statically_linked
|
|
#Note: the first three letters (the lib) must not be specified, as well as the suffix (.a)
|
|
|
|
full :
|
|
$(MAKE) clean ; $(MAKE) && $(MAKE) test && $(MAKE) bootstrap && cd ../cyclone-bootstrap && $(MAKE) clean && ./install.sh
|
|
|
|
bench :
|
|
cd ../r7rs-benchmarks && rm results.Cyclone && ./bench cyclone all && grep Elapsed results.Cyclone >out.txt ; grep Elapsed results.Cyclone |wc ; grep -i -e error -e limit -e crash results.Cyclone ; grep Elapsed results.Cyclone | cut -d" " -f 3 ; true
|
|
|
|
bootstrap : icyc libs
|
|
mkdir -p $(BOOTSTRAP_DIR)/libs/cyclone
|
|
mkdir -p $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
mkdir -p $(BOOTSTRAP_DIR)/srfi
|
|
mkdir -p $(BOOTSTRAP_DIR)/$(HEADER_DIR)
|
|
cp $(HEADER_DIR)/types.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp $(HEADER_DIR)/runtime-main.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp $(HEADER_DIR)/runtime.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp $(HEADER_DIR)/ck_ht_hash.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp $(HEADER_DIR)/hashset.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp $(HEADER_DIR)/bignum.h $(BOOTSTRAP_DIR)/include/cyclone
|
|
cp scheme/*.sld $(BOOTSTRAP_DIR)/scheme
|
|
cp libs/cyclone/*.sld $(BOOTSTRAP_DIR)/libs/cyclone
|
|
cp scheme/cyclone/*.sld $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp libs/cyclone/*.c $(BOOTSTRAP_DIR)/libs/cyclone
|
|
cp srfi/*.sld $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/*.scm $(BOOTSTRAP_DIR)/srfi
|
|
cp runtime.c $(BOOTSTRAP_DIR)
|
|
cp ffi.c $(BOOTSTRAP_DIR)
|
|
cp mstreams.c $(BOOTSTRAP_DIR)
|
|
cp hashset.c $(BOOTSTRAP_DIR)
|
|
cp gc.c $(BOOTSTRAP_DIR)
|
|
cp scheme/base.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/case-lambda.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/cxr.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/read.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/write.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/char.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/complex.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/eval.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/repl.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/file.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/inexact.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/lazy.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/load.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/process-context.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/time.c $(BOOTSTRAP_DIR)/scheme
|
|
cp scheme/cyclone/common.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp icyc.scm $(BOOTSTRAP_DIR)
|
|
cp icyc.c $(BOOTSTRAP_DIR)
|
|
cp tests/unit-tests.scm $(BOOTSTRAP_DIR)/tests
|
|
cp tests/base.scm $(BOOTSTRAP_DIR)/tests
|
|
cp tests/threading.scm $(BOOTSTRAP_DIR)/tests
|
|
cp scheme/cyclone/ast.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/cps-optimizations.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/cps-opt-local-var-redux.scm $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/cps-opt-analyze-call-graph.scm $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/cps-opt-memoize-pure-fncs.scm $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/pass-validate-syntax.scm $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/hashset.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/libraries.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/macros.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp libs/cyclone/match.c $(BOOTSTRAP_DIR)/cyclone
|
|
cp libs/cyclone/match.meta $(BOOTSTRAP_DIR)/cyclone
|
|
cp libs/cyclone/foreign.meta $(BOOTSTRAP_DIR)/cyclone
|
|
cp scheme/cyclone/pretty-print.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/primitives.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/transforms.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/cgen.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp scheme/cyclone/util.c $(BOOTSTRAP_DIR)/scheme/cyclone
|
|
cp libs/cyclone/test.c $(BOOTSTRAP_DIR)/cyclone
|
|
cp libs/cyclone/test.meta $(BOOTSTRAP_DIR)/cyclone
|
|
cp libs/cyclone/test.scm $(BOOTSTRAP_DIR)/cyclone
|
|
cp srfi/1.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/2.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/2.meta $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/18.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/27.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/28.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/60.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/69.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/106.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/111.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/113.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/117.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/121.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/128.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/128.meta $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/132.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/133.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/143.c $(BOOTSTRAP_DIR)/srfi
|
|
cp srfi/list-queues/*.scm $(BOOTSTRAP_DIR)/srfi/list-queues
|
|
cp srfi/sets/*.scm $(BOOTSTRAP_DIR)/srfi/sets
|
|
cp srfi/sorting/*.scm $(BOOTSTRAP_DIR)/srfi/sorting
|
|
cp cyclone.c $(BOOTSTRAP_DIR)/cyclone.c
|
|
cp Makefile.config $(BOOTSTRAP_DIR)/Makefile.config
|
|
|
|
install-includes : $(HEADER_DIR)/*.h
|
|
$(MKDIR) $(DESTDIR)$(INCDIR)
|
|
$(INSTALL) -m0644 $(HEADER_DIR)/*.h $(DESTDIR)$(INCDIR)/
|
|
|
|
install-libs : $(CYC_LIBS)
|
|
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
|
$(INSTALL) -m0644 $(CYC_RT_LIB) $(DESTDIR)$(LIBDIR)/
|
|
$(INSTALL) -m0644 $(CYC_BN_LIB) $(DESTDIR)$(LIBDIR)/
|
|
|
|
install-bin : cyclone icyc
|
|
$(MKDIR) $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) -m0755 cyclone $(DESTDIR)$(BINDIR)/
|
|
$(INSTALL) -m0755 icyc $(DESTDIR)$(BINDIR)/
|