adapt hwpfilter unittests to separate RdbTarget makefile requirement
[LibreOffice.git] / Makefile.in
blob2b5eb5c31f5e8012ddfba1801b113c6bb5d9bb89
1 # @configure_input@
3 SHELL=/usr/bin/env bash
5 ifeq (@CROSS_COMPILING@,YES)
6 CROSS_TOOLSET_RULE:=cross-build-toolset
7 else
8 CROSS_TOOLSET_RULE:=
9 endif
11 ifeq ($(filter all check unitcheck,$(MAKECMDGOALS)),)
12 gb_MAKETARGET=build
13 else
14 # fail early
15 gb_MAKETARGET=all
16 endif
18 .PHONY : build dev-install all cross-build-toolset install distro-pack-install clean distclean findunusedcode
20 all: build unitcheck
22 build: Makefile dmake/dmake@EXEEXT_FOR_BUILD@ src.downloaded $(CROSS_TOOLSET_RULE)
23 @. ./Env.Host.sh && \
24 cd instsetoo_native && \
25 gb_MAKETARGET=$(gb_MAKETARGET) build.pl -P@BUILD_NCPUS@ --all -- -P@BUILD_MAX_JOBS@
27 dev-install: build
28 @. ./Env.Host.sh && \
29 cd smoketestoo_native && \
30 build.pl -P@BUILD_NCPUS@ -- -P@BUILD_MAX_JOBS@ && \
31 rm -f "@abs_builddir@"/install && \
32 ln -s "$$SOLARVER/$$INPATH"/installation/opt/ \
33 "@abs_builddir@"/install && \
34 printf '\n' && \
35 install-gdb-printers -L && \
36 printf \
37 '\nDeveloper installation finished, you can now execute:\n\n' \
38 && \
39 if test `uname -s` = Darwin; then \
40 printf 'open %s/install/LibreOffice.app\n' "@abs_builddir@"; \
41 else \
42 printf 'cd %s/install/program\n. ./ooenv\n./soffice.bin\n' \
43 "@abs_builddir@"; \
46 check : allcheck
47 @true
49 %check:
50 @. ./Env.Host.sh && $$GNUMAKE -f "$$SRC_ROOT"/GNUmakefile.mk -r \
51 $(if @VERBOSE@,,-s) --jobs="$(if \
52 $(CHECK_PARALLELISM),$(CHECK_PARALLELISM),@GMAKE_PARALLELISM@)" \
53 $(patsubst allcheck,check,$@)
55 cross-build-toolset:
56 @. ./Env.Build.sh && \
57 cd cross_toolset && \
58 build.pl -P@BUILD_NCPUS@ --all -- -P@BUILD_MAX_JOBS@
60 install: build
61 @. ./Env.Host.sh && \
62 echo "Installing in @INSTALLDIR@..." && \
63 ooinstall "@INSTALLDIR@" && \
64 echo "" && \
65 echo "Installation finished, you can now execute:" && \
66 echo "@INSTALLDIR@/program/soffice"
68 distro-pack-install: install
69 ./bin/distro-install-clean-up
70 ./bin/distro-install-desktop-integration
71 ./bin/distro-install-sdk
72 ./bin/distro-install-file-lists
74 distclean: clean
75 ifeq (@BUILD_DMAKE@,YES)
76 -test -f dmake/Makefile && $(MAKE) -C dmake distclean
77 endif
78 rm -rf Env.Host.sh Makefile aclocal.m4 autogen.lastrun autom4te.cache \
79 bin/repo-list bootstrap config.log config.status configure \
80 desktop/scripts/soffice.sh ooo.lst post_download post_download.log \
81 set_soenv set_soenv.last set_soenv.stamp src.downloaded warn
83 clean:
84 . ./Env.Host.sh && \
85 rm -rf */$$INPATH && \
86 rm -rf solver/$$INPATH && \
87 rm -rf workdir && \
88 rm -rf install
89 ifeq (@BUILD_DMAKE@,YES)
90 . ./Env.Host.sh && \
91 (if [ -f dmake/Makefile ] ; then $$GNUMAKE -C dmake clean; fi) && \
92 rm -f solenv/*/bin/dmake*
93 endif
94 ifeq (@CROSS_COMPILING@,YES)
95 . ./Env.Host.sh && \
96 rm -rf */$$INPATH_FOR_BUILD && \
97 rm -rf solver/$$INPATH_FOR_BUILD
98 endif
100 dmake/dmake@EXEEXT_FOR_BUILD@:
101 ./bootstrap
103 src.downloaded: ooo.lst download
104 ifeq (@DO_FETCH_TARBALLS@,YES)
105 @. ./Env.Host.sh && \
106 $$SRC_ROOT/download $$SRC_ROOT/ooo.lst && touch $@
107 else
108 @echo "Automatic fetching of external tarballs is disabled."
109 endif
111 fetch: src.downloaded
113 Makefile: autogen.lastrun configure.in ooo.lst.in set_soenv.in Makefile.in
114 ./autogen.sh
117 @. ./Env.Host.sh && \
118 create-ids
120 tags:
121 @. ./Env.Host.sh && \
122 create-tags
124 docs:
125 @. ./Env.Host.sh && \
126 mkdocs.sh $$SRC_ROOT/docs $$SOLARENV/inc/doxygen.cfg
128 findunusedcode:
129 # experimental callcatcher target
130 # http://www.skynet.ie/~caolan/Packages/callcatcher.html
131 @which callcatcher > /dev/null 2>&1 || \
132 (echo "callcatcher not installed" && false)
133 @. ./Env.Host.sh && \
134 mkdir -p $$SRC_ROOT/solenv/callcatcher/bin && \
135 ln -sf $$SRC_ROOT/solenv/$$INPATH/bin/dmake \
136 $$SRC_ROOT/solenv/callcatcher/bin/dmake && \
137 source <(sed -e s,$$INPATH,callcatcher,g ./Env.Host.sh) && \
138 . ./solenv/bin/callcatchEnv.Set.sh && \
139 cd instsetoo_native && \
140 build.pl -P@BUILD_NCPUS@ --all -- -P@BUILD_MAX_JOBS@
141 @. ./Env.Host.sh && \
142 source <(sed -e s,$$INPATH,callcatcher,g ./Env.Host.sh) && \
143 callanalyse \
144 $$WORKDIR/LinkTarget/*/* \
145 */$$OUTPATH/bin/* \
146 */$$OUTPATH/lib/* > unusedcode.all
147 #because non-c++ symbols could be dlsymed lets make a list of class level
148 #unused methods which don't require much effort to determine if they need
149 #to be just removed, or put behind appropiate platform or debug level ifdefs
150 @grep ::.*\( unusedcode.all | grep -v ^cppu:: > unusedcode.easy
152 #as long as we are not completely gbuildified we need to explicitly depend on the build/install
153 unitcheck: build
154 subsequentcheck: dev-install
155 allcheck : dev-install