2
# This is a compile kit to suggest how to port to your machine
4
# "config.h" MUST have at least 1 of the 2 below
5
#define HAVE_STDINT_H 1 /* uint*_t types must be defined */
6
#define HAVE_INTTYPES_H 1 /* this was an older way on some */
8
# without this it will default to a big-endian machine
9
#define JU_LITTLE_ENDIAN 1 /* intel, DEC processors */
11
#define JU_NOINLINE 1 /* compilers no support inline */
13
#define JU_BIT64 1 /* if it is a 64bit compile */
14
# end of what is necessary for config.h
19
# Shared library option
23
# Common to Judy1 and JudyL
25
cc -Wall $COPT $CPIC -I. -I.. -c JudyMalloc.c
26
cc -Wall $COPT $CPIC -I. -I.. -c JudySearchLeaf.c
29
# Compile the Judy1 routines
31
ln -sf ../JudyCommon/JudyByCount.c Judy1ByCount.c
32
ln -sf ../JudyCommon/JudyCascade.c Judy1Cascade.c
33
ln -sf ../JudyCommon/JudyCount.c Judy1Count.c
34
ln -sf ../JudyCommon/JudyCreateBranch.c Judy1CreateBranch.c
35
ln -sf ../JudyCommon/JudyDecascade.c Judy1Decascade.c
36
ln -sf ../JudyCommon/JudyDel.c Judy1Unset.c
37
ln -sf ../JudyCommon/JudyFirst.c Judy1First.c
38
ln -sf ../JudyCommon/JudyFreeArray.c Judy1FreeArray.c
39
ln -sf ../JudyCommon/JudyGet.c Judy1Test.c
40
ln -sf ../JudyCommon/JudyGet.c __Judy1Test.c
41
ln -sf ../JudyCommon/JudyInsArray.c Judy1SetArray.c
42
ln -sf ../JudyCommon/JudyIns.c Judy1Set.c
43
ln -sf ../JudyCommon/JudyInsertBranch.c Judy1InsertBranch.c
44
ln -sf ../JudyCommon/JudyMallocIF.c Judy1MallocIF.c
45
ln -sf ../JudyCommon/JudyMemActive.c Judy1MemActive.c
46
ln -sf ../JudyCommon/JudyMemUsed.c Judy1MemUsed.c
47
ln -sf ../JudyCommon/JudyPrevNext.c Judy1Next.c
48
ln -sf ../JudyCommon/JudyPrevNext.c Judy1Prev.c
49
ln -sf ../JudyCommon/JudyPrevNextEmpty.c Judy1NextEmpty.c
50
ln -sf ../JudyCommon/JudyPrevNextEmpty.c Judy1PrevEmpty.c
51
ln -sf ../JudyCommon/JudyTables.c Judy1TablesGen.c
53
# This table is constructed from Judy1.h data to match malloc(3) needs
54
cc -Wall -I.. -I../JudyCommon -DJUDY1 Judy1TablesGen.c -o Judy1TablesGen
55
rm -f Judy1TablesGen.o
56
./Judy1TablesGen > Judy1Tables.c
57
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Tables.c
59
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Test.c
60
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJUDYGETINLINE __Judy1Test.c
61
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJU_COV_INLINES Judy1Set.c
62
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1SetArray.c
63
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Unset.c
64
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1First.c
65
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJUDYNEXT Judy1Next.c
66
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJUDYPREV Judy1Prev.c
67
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJUDYNEXT Judy1NextEmpty.c
68
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DJUDYPREV Judy1PrevEmpty.c
69
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Count.c
70
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 -DNOSMARTJBB -DNOSMARTJBU -DNOSMARTJLB Judy1ByCount.c
71
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1FreeArray.c
72
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1MemUsed.c
73
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1MemActive.c
74
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Cascade.c
75
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1Decascade.c
76
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1CreateBranch.c
77
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1InsertBranch.c
78
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDY1 Judy1MallocIF.c
81
# Compile the JudyL routines
83
ln -sf ../JudyCommon/JudyByCount.c JudyLByCount.c
84
ln -sf ../JudyCommon/JudyCascade.c JudyLCascade.c
85
ln -sf ../JudyCommon/JudyCount.c JudyLCount.c
86
ln -sf ../JudyCommon/JudyCreateBranch.c JudyLCreateBranch.c
87
ln -sf ../JudyCommon/JudyDecascade.c JudyLDecascade.c
88
ln -sf ../JudyCommon/JudyDel.c JudyLDel.c
89
ln -sf ../JudyCommon/JudyFirst.c JudyLFirst.c
90
ln -sf ../JudyCommon/JudyFreeArray.c JudyLFreeArray.c
91
ln -sf ../JudyCommon/JudyGet.c JudyLGet.c
92
ln -sf ../JudyCommon/JudyGet.c __JudyLGet.c
93
ln -sf ../JudyCommon/JudyInsArray.c JudyLInsArray.c
94
ln -sf ../JudyCommon/JudyIns.c JudyLIns.c
95
ln -sf ../JudyCommon/JudyInsertBranch.c JudyLInsertBranch.c
96
ln -sf ../JudyCommon/JudyMallocIF.c JudyLMallocIF.c
97
ln -sf ../JudyCommon/JudyMemActive.c JudyLMemActive.c
98
ln -sf ../JudyCommon/JudyMemUsed.c JudyLMemUsed.c
99
ln -sf ../JudyCommon/JudyPrevNext.c JudyLNext.c
100
ln -sf ../JudyCommon/JudyPrevNext.c JudyLPrev.c
101
ln -sf ../JudyCommon/JudyPrevNextEmpty.c JudyLNextEmpty.c
102
ln -sf ../JudyCommon/JudyPrevNextEmpty.c JudyLPrevEmpty.c
103
ln -sf ../JudyCommon/JudyTables.c JudyLTablesGen.c
105
# This table is constructed from JudyL.h data to match malloc(3) needs
106
cc -Wall -I.. -I../JudyCommon -DJUDYL JudyLTablesGen.c -o JudyLTablesGen
107
rm -f JudyLTablesGen.o
108
./JudyLTablesGen > JudyLTables.c
109
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLTables.c
111
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLGet.c
112
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJUDYGETINLINE __JudyLGet.c
113
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJU_COV_INLINES JudyLIns.c
114
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLInsArray.c
115
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLDel.c
116
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLFirst.c
117
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJUDYNEXT JudyLNext.c
118
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJUDYPREV JudyLPrev.c
119
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJUDYNEXT JudyLNextEmpty.c
120
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DJUDYPREV JudyLPrevEmpty.c
121
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLCount.c
122
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL -DNOSMARTJBB -DNOSMARTJBU -DNOSMARTJLB JudyLByCount.c
123
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLFreeArray.c
124
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLMemUsed.c
125
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLMemActive.c
126
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLCascade.c
127
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLDecascade.c
128
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLCreateBranch.c
129
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLInsertBranch.c
130
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c -DJUDYL JudyLMallocIF.c
133
# Compile the JudySL routines
135
cc -Wall $COPT $CPIC -I.. -I../JudyCommon -c JudySL.c
138
# Make a Judy shared library with CPIC='-fPIC' above
139
#ld -shared -o libJudy.so Judy*/*.o
143
# Make a Judy static library
144
ar -r libJudy.a Judy*/*.o
146
# This step makes Judy.h suitable for user programs
147
# -DHAVE_STDINT_H and -UHAVE_INTTYPES_h must be same as config.h
148
cc -Wall ../tool/unifdef.c -o unifdef
149
./unifdef -UJU_FLAVOR_DEBUG \
153
< Judy.h | grep -v '^#pragma' > Judy.h_user