summaryrefslogtreecommitdiff
path: root/Makefile.shared
blob: 64f1a6464aa69f75901f9491c3a740bd542851ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# If we 'export' all our variables to forked processes
# we end up with a horrible mess - since we propagate
# eg. ACLOCAL_M4, AMDEP_TRUE, COMPATH etc.
# - a nightmare in a nutshell => we need to export on a
#   need-to-know / minimal basis.

STAMP_DIR=$(top_builddir)/stamp

# Source preparation

unpack : $(OOBUILDDIR)/unpack $(top_srcdir)/bin/unpack
$(OOBUILDDIR)/unpack :
	$(TOOLSDIR)/bin/transform --revert $(TOOLSDIR) $(OOBUILDDIR)
	if test -d $(OOBUILDDIR)/applied_patches ; then \
		FLAGS="--distro=$(DISTRO)"; \
		if test -d $(OOBUILDDIR)/binfilter ; then \
			FLAGS="$$FLAGS --distro=Binfilter"; \
		fi ; \
		if test -d $(OOBUILDDIR)/hunspell ; then \
			FLAGS="--distro=Hunspell $$FLAGS"; \
		fi ; \
		if grep localize.sdf $(OOBUILDDIR)/sw/source/ui/app/localize.sdf > /dev/null 2>&1 ; then \
			FLAGS="$$FLAGS --distro=Localize"; \
		fi ; \
		$(TOOLSDIR)/patches/apply.pl $(APPLY_DIR) $(OOBUILDDIR) $$FLAGS -f -R ; \
	fi
	cd $(top_srcdir)/bin ; ./unpack
	rm -f $(STAMP_DIR)/build $(STAMP_DIR)/patch.apply \
	      $(STAMP_DIR)/artwork.install
	touch $@

artwork.install : $(STAMP_DIR)/artwork.install
$(STAMP_DIR)/artwork.install : $(OOBUILDDIR)/unpack \
			      $(STAMP_DIR)/prebuild \
			      $(top_srcdir)/src/*.png $(top_srcdir)/src/*.bmp
	mkdir -p $(OOBUILDDIR)/svx/res
	cp $(top_srcdir)/src/open*_*.bmp $(OOBUILDDIR)/svx/res/ || echo "no intro images to copy"
	cp $(top_srcdir)/src/open*_*.png $(OOBUILDDIR)/default_images/svx/res/ || echo "no about images to copy"
	cp $(top_srcdir)/src/*-team.png $(OOBUILDDIR)/default_images/sw/res/ || echo "no team images to copy"
	cp -vf $(TOOLSDIR)/fonts/opens___.ttf $(OOBUILDDIR)/extras/source/truetype/symbol || echo "font copy failed";
	$(TOOLSDIR)/bin/hicontrast-to-theme.sh $(OOBUILDDIR)/default_images $(OOBUILDDIR)/ooo_custom_images/hicontrast || echo "cannot create hicontrast icon theme"
	touch $@

patch.apply: $(OOBUILDDIR)/unpack $(STAMP_DIR)/patch.apply 
$(STAMP_DIR)/patch.apply : $(top_srcdir)/patches/apply.pl \
			   $(top_srcdir)/patches/*/*.diff \
			   $(APPLY_DIR)/apply
	cp -f $(SRCDIR)/libwpd-0*.tar.gz $(OOBUILDDIR)/libwpd/download/ || echo "cannot copy libwpd"
	if test "z$(BUILD_WIN32)" != "z"; then \
	    cp -af $(BUILDDIR)/x86/* $(OOBUILDDIR)/external/dbghelp || true; \
	    cp -af $(BUILDDIR)/*.dll $(OOBUILDDIR)/external/unicows || true; \
	    mv $(OOBUILDDIR)/external/dbghelp/DbgHelp.Dll  \
		     $(OOBUILDDIR)/external/dbghelp/dbghelp.dll.temp || true; \
	    mv $(OOBUILDDIR)/external/dbghelp/dbghelp.dll.temp  \
		     $(OOBUILDDIR)/external/dbghelp/dbghelp.dll || true; \
	    chmod +x $(OOBUILDDIR)/external/dbghelp/*.dll \
		     $(OOBUILDDIR)/external/unicows/*.dll || true; \
	fi
	$(TOOLSDIR)/bin/transform --revert $(TOOLSDIR) $(OOBUILDDIR)
	FLAGS="--distro=$(DISTRO)"; \
	if test -d $(OOBUILDDIR)/binfilter ; then \
		FLAGS="$$FLAGS --distro=Binfilter"; \
	fi ; \
	if test -d $(OOBUILDDIR)/hunspell ; then \
		FLAGS="--distro=Hunspell $$FLAGS"; \
	fi ; \
	if grep localize.sdf $(OOBUILDDIR)/sw/source/ui/app/localize.sdf > /dev/null 2>&1 ; then \
		FLAGS="$$FLAGS --distro=Localize"; \
	fi ; \
	$(TOOLSDIR)/patches/apply.pl $(APPLY_DIR) $(OOBUILDDIR) $$FLAGS --tag=$(CVSTAG) ;
	$(TOOLSDIR)/bin/transform --apply $(TOOLSDIR) $(OOBUILDDIR)
	$(TOOLSDIR)/bin/fix-deps $(OOBUILDDIR)
	rm -f $(STAMP_DIR)/build
	touch $@

patch.unapply:
	$(TOOLSDIR)/bin/transform --revert $(TOOLSDIR) $(OOBUILDDIR)
	FLAGS="--distro=$(DISTRO)"; \
	if test -d $(OOBUILDDIR)/binfilter ; then \
		FLAGS="$$FLAGS --distro=Binfilter"; \
	fi ; \
	if test -d $(OOBUILDDIR)/hunspell ; then \
		FLAGS="--distro=Hunspell $$FLAGS"; \
	fi ; \
	if grep localize.sdf $(OOBUILDDIR)/sw/source/ui/app/localize.sdf > /dev/null 2>&1 ; then \
		FLAGS="$$FLAGS --distro=Localize"; \
	fi ; \
	$(TOOLSDIR)/patches/apply.pl $(APPLY_DIR) $(OOBUILDDIR) $$FLAGS -R ;
	rm -f $(STAMP_DIR)/patch.apply

# Build bits:

prebuild : $(STAMP_DIR)/prebuild
$(STAMP_DIR)/prebuild : $(OOBUILDDIR)/unpack
	echo "Creating environment"
	mkdir -p $(BUILDDIR)
	mkdir -p $(BUILDDIR)/bin
	mkdir -p $(BUILDDIR)/share
	mkdir -p $(BUILDDIR)/share/aclocal
	mkdir -p $(BUILDDIR)/share/autoconf
	mkdir -p $(BUILDDIR)/lib
	mkdir -p $(BUILDDIR)/man
	mkdir -p $(BUILDDIR)/man/man1
	mkdir -p $(OOBUILDDIR)
	mkdir -p $(OOBUILDDIR)/external/msvcp71
	touch $@

build.tools : $(STAMP_DIR)/build.tools
$(STAMP_DIR)/build.tools : $(STAMP_DIR)/prebuild
	cd $(top_srcdir)/bin ; ./build-tools
	touch $@

build : $(STAMP_DIR)/build
$(STAMP_DIR)/build : $(OOBUILDDIR)/unpack \
		     $(STAMP_DIR)/patch.apply \
		     $(STAMP_DIR)/artwork.install \
		     $(STAMP_DIR)/build.tools \
		     $(STAMP_DIR)/prebuild
	cd $(top_srcdir)/bin ; ./build-ooo
	touch $@

all: build

install: $(STAMP_DIR)/build
	cd bin ; ./package-ooo