7 ORIGIN_BASE
=$(HOME
)/.cache
/argeo
/build
/origin
8 BOOTSTRAP_BASE
=$(SDK_BUILD_BASE
)/bootstrap
10 ECJ_BASE
=$(BOOTSTRAP_BASE
)/ecj
11 ECJ_SRC
=$(ECJ_BASE
)/OSGI-OPT
/src
13 BNDLIB_BASE
=$(BOOTSTRAP_BASE
)/bndlib
14 BNDLIB_SRC
=$(BNDLIB_BASE
)/OSGI-OPT
/src
16 bootstrap-download-sources
: $(ORIGIN_BASE
)/ecjsrc-
$(ECJ_VERSION
).jar
$(ORIGIN_BASE
)/bnd-
$(BND_VERSION
).
tar.gz
18 $(ORIGIN_BASE
)/ecjsrc-
$(ECJ_VERSION
).jar
:
19 mkdir
-p
$(ORIGIN_BASE
)
20 wget
-c
-O
$(ORIGIN_BASE
)/ecjsrc-
$(ECJ_VERSION
).jar https
://ftp-stud.hs-esslingen.de
/Mirrors
/eclipse
/eclipse
/downloads
/drops4
/R-4.26
-202211231800/ecjsrc-
$(ECJ_VERSION
).jar
22 $(ORIGIN_BASE
)/bnd-
$(BND_VERSION
).
tar.gz
:
23 mkdir
-p
$(ORIGIN_BASE
)
24 wget
-c
-O
$(ORIGIN_BASE
)/bnd-
$(BND_VERSION
).
tar.gz https
://github.com
/bndtools
/bnd
/archive
/refs
/tags/$(BND_VERSION
).REL.
tar.gz
26 all: ecj-build bndlib-build
27 make
-C org.argeo.tp.build
all
33 cd
$(ECJ_BASE
) && jar
-xf
$(ORIGIN_BASE
)/ecjsrc-
$(ECJ_VERSION
).jar
34 # remove ant-dependent class
35 $(RM
) $(ECJ_BASE
)/org
/eclipse
/jdt
/core
/JDTCompilerAdapter.java
37 $(RM
) $(ECJ_BASE
)/*.jar
38 $(RM
) $(ECJ_BASE
)/build.xml
39 $(RM
) $(ECJ_BASE
)/ecj
.1
40 $(RM
) -rf
$(ECJ_BASE
)/scripts
41 # TODO: keep the service files
42 $(RM
) -rf
$(ECJ_BASE
)/META-INF
44 find
$(ECJ_BASE
)/org | grep
"\.java" > $(BOOTSTRAP_BASE
)/ecj.todo
47 cp
-r
$(ECJ_BASE
)/org
$(ECJ_SRC
)
49 $(JAVA_HOME
)/bin
/javac
-d
$(ECJ_BASE
) -source
17 -target
17 -Xlint
:none @
$(BOOTSTRAP_BASE
)/ecj.todo
51 cd
$(ECJ_BASE
) && find .
-name
"*.java" -name
"*.html" -type f
-exec
rm -f
{} \
;
53 bndlib-build
: ecj-build
55 cd
$(BOOTSTRAP_BASE
) && tar -xzf
$(ORIGIN_BASE
)/bnd-
$(BND_VERSION
).
tar.gz
56 mkdir
-p
$(BNDLIB_SRC
)
57 cp
-r
$(BOOTSTRAP_BASE
)/bnd-
$(BND_VERSION
).REL
/aQute.libg
/src
/* $(BNDLIB_SRC
)
58 cp
-r
$(BOOTSTRAP_BASE
)/bnd-
$(BND_VERSION
).REL
/biz.aQute.bndlib
/src
/* $(BNDLIB_SRC
)
59 cp
-r
$(BOOTSTRAP_BASE
)/bnd-
$(BND_VERSION
).REL
/biz.aQute.bnd.annotation
/src
/* $(BNDLIB_SRC
)
60 rm -rf
$(BOOTSTRAP_BASE
)/bnd-
$(BND_VERSION
).REL
63 rm -rf
$(BNDLIB_SRC
)/aQute
/bnd
/junit
66 $(JAVA_HOME
)/bin
/java
-cp
$(ECJ_BASE
) org.eclipse.jdt.internal.compiler.batch.Main
-nowarn \
67 -cp
$(BND_CLASSPATH
) \
68 -source
17 -target
17 \
74 rm -rf
$(BOOTSTRAP_BASE
)
75 make
-C org.argeo.tp.build
clean