source: git/IntegerProgramming/Makefile.in @ 9ec090

spielwiese
Last change on this file since 9ec090 was 9ec090, checked in by Hans Schönemann <hannes@…>, 23 years ago
* hannes: LLL git-svn-id: file:///usr/local/Singular/svn/trunk@5336 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.6 KB
Line 
1## Makefile for integer programming
2SINGUNAME       = @SINGUNAME@
3##
4## various paths
5##
6bindir          = @bindir@
7prefix          = @prefix@
8slibdir         = ${prefix}/LIB
9install_bindir  = ${install_prefix}/${SINGUNAME}
10
11##
12## various programs
13##
14@SET_MAKE@
15CXX             = @CXX@
16## gcc won't work
17ifeq ($(CXX),gcc)
18CXX := c++
19endif
20
21INSTALL         = @INSTALL@
22INSTALL_PROGRAM = @INSTALL_PROGRAM@
23MKINSTALLDIRS   = ../mkinstalldirs
24
25##
26## compiler and linker options
27##
28CPPFLAGS        = @CPPFLAGS@
29CXXFLAGS        = @CXXFLAGS@
30LDFLAGS         = @LDFLAGS@ -lgmp
31
32
33MAIN1   := solve_IP
34OBJECTS1:= $(MAIN1).o
35
36MAIN2   := change_cost
37OBJECTS2:= $(MAIN2).o
38
39MAIN3   := toric_ideal
40OBJECTS3:= $(MAIN3).o
41
42MAIN4   := gen_test
43OBJECTS4:= $(MAIN4).o
44
45LLL   := LLL
46OBJECTS_LLL:= LLL_lattice_to_send.o
47
48%.o: %.cc
49        $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@
50
51all: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL)
52
53install: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL)
54        ${MKINSTALLDIRS} ${bindir}
55        ${INSTALL_PROGRAM} $(MAIN1) ${bindir}
56        ${INSTALL_PROGRAM} $(MAIN2) ${bindir}
57        ${INSTALL_PROGRAM} $(MAIN3) ${bindir}
58        ${INSTALL_PROGRAM} $(MAIN4) ${bindir}
59        ${INSTALL_PROGRAM} $(LLL) ${bindir}
60
61install-bindist: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4)
62        ${MKINSTALLDIRS} ${install_bindir}
63        ${INSTALL_PROGRAM} -s $(MAIN1) ${install_bindir}
64        ${INSTALL_PROGRAM} -s $(MAIN2) ${install_bindir}
65        ${INSTALL_PROGRAM} -s $(MAIN3) ${install_bindir}
66        ${INSTALL_PROGRAM} -s $(MAIN4) ${install_bindir}
67        ${INSTALL_PROGRAM} -s $(LLL) ${bindir}
68
69clean:
70        rm -f *.o *~
71
72distclean: clean
73        rm -f $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4)
74        -rm -f ${bindir}/$(MAIN1)
75        -rm -f ${bindir}/$(MAIN2)
76        -rm -f ${bindir}/$(MAIN3)
77        -rm -f ${bindir}/$(MAIN4)
78        -rm -f ${bindir}/$(LLL)
79
80$(MAIN1): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
81        ideal.o \
82        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
83        $(OBJECTS1)
84        $(CXX) $^ -o $@ $(LDFLAGS)
85        strip $(MAIN1)
86
87$(MAIN2): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
88        ideal.o \
89        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o  \
90        $(OBJECTS2)
91        $(CXX)  $^ -o $@ $(LDFLAGS)
92        strip $(MAIN2)
93
94$(MAIN3): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
95        ideal.o \
96        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
97        $(OBJECTS3)
98        $(CXX)  $^ -o $@ $(LDFLAGS)
99        strip $(MAIN3)
100
101$(MAIN4): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
102        ideal.o \
103        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
104        $(OBJECTS4)
105        $(CXX)  $^ -o $@ $(LDFLAGS)
106        strip $(MAIN4)
107
108$(LLL): $(OBJECTS_LLL)
109        $(CXX)  $^ -o $@ $(LDFLAGS)
110        strip $(LLL)
111
112Makefile: Makefile.in
113        cd ..;  CONFIG_FILES="IntegerProgramming/Makefile" CONFIG_HEADERS= ./config.status
114
Note: See TracBrowser for help on using the repository browser.