summaryrefslogtreecommitdiff
path: root/recipes/gpe-sketchbook/files/svn-build.patch
blob: 026689a0580cf7f694d4eadabed7a627263df1ca (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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
diff -Naur gpe-sketchbook.orig/build/Makefile.dpkg_ipkg gpe-sketchbook/build/Makefile.dpkg_ipkg
--- gpe-sketchbook.orig/build/Makefile.dpkg_ipkg	1970-01-01 02:00:00.000000000 +0200
+++ gpe-sketchbook/build/Makefile.dpkg_ipkg	2007-02-10 17:21:40.154584782 +0200
@@ -0,0 +1,114 @@
+## Please read the README in this directory to see how to use this
+## Makefile snippet
+
+# Let's use whatever clean target the specific app provides
+
+CONTROL = `if test -e familiar/control1; then echo control1; else echo control; fi`
+
+# URL to source tarball
+SOURCE = http://gpe.linuxtogo.org/download/source/$(PACKAGE)-$(VERSION).tar.gz
+
+# can change this to e.g. /var/tmp/deb
+DEB_PATH = ../deb
+
+ifeq ($(CVSBUILD),yes)
+LIBGPEWIDGET_PC = libgpewidget-uninstalled
+PC_EXTRA=PKG_CONFIG_PATH=../../base/libgpewidget
+else
+LIBGPEWIDGET_PC = libgpewidget
+endif
+
+ifeq ($(IN_LIBGPEWIDGET),)
+GPECFLAGS = $(shell $(PC_EXTRA) pkg-config --cflags $(LIBGPEWIDGET_PC))
+GPELIBS = $(shell $(PC_EXTRA) pkg-config --libs $(LIBGPEWIDGET_PC))
+endif
+
+GTKCFLAGS = $(shell pkg-config --cflags gtk+-2.0)
+GTKLIBS = $(shell pkg-config --libs gtk+-2.0)
+
+STANDARD_CPPFLAGS = -D_GNU_SOURCE -DPACKAGE=\"$(PACKAGE)\" -DPREFIX=\"$(PREFIX)\" -DPACKAGE_LOCALE_DIR=\"$(PREFIX)/share/locale\"
+STANDARD_CFLAGS = -MD -Wall
+
+ifeq ($(DEBUG),yes)
+CFLAGS += -O2 -g
+LDFLAGS = -g
+else
+CFLAGS += -Os -fomit-frame-pointer
+endif
+
+dist: check-source clean dist-prep
+	rm -rf ../$(PACKAGE)-$(VERSION)
+	mkdir ../$(PACKAGE)-$(VERSION)
+	( tar cf - --exclude "*/CVS" --exclude CVS --exclude "*~" --exclude "#*#" --exclude "debian" --exclude ".*" --exclude "*.ipk" --exclude "*.ipk.*" --exclude "*.mo" --exclude "*.batch" --exclude "translation-ipkgs.txt" * ) | (cd ../$(PACKAGE)-$(VERSION); tar xf -)
+	( if [ -f linguas ]; then LINGUAS=`cat linguas`; PATCH_LINGUAS="s:^LINGUAS =.*:LINGUAS = $${LINGUAS}:"; fi; cd ../$(PACKAGE)-$(VERSION) && mkdir build && cp $(BUILD)/Makefile.dpkg_ipkg $(BUILD)/Makefile.translation build/ && sed "s:^CVSBUILD =.*:CVSBUILD = no:;s:^DEBUG =.*:DEBUG = no:;s:Makefile.translation-auto-linguas:Makefile.translation:;$${PATCH_LINGUAS}" < Makefile > Makefile.new && mv Makefile.new Makefile )
+	( cd .. ; tar cf - $(PACKAGE)-$(VERSION) | gzip -9 >$(PACKAGE)-$(VERSION).tar.gz )
+	rm -rf ../$(PACKAGE)-$(VERSION)
+	$(MAKE) printinfo
+
+dist-upload: dist
+	scp ../$(PACKAGE)-$(VERSION).tar.gz $(USER)@linuxtogo.org:/media/data/projects/gpe/source/
+
+dist-prep:
+ipkg-prep:
+install-mo:
+# empty, can be filled in Makefile.translation
+
+install: install-program install-mo
+
+clean-dist:
+	rm -rf familiar/dist familiar/dist.list
+
+clean: clean-dist
+
+check-source:
+	@if [ -f familiar/$(CONTROL) ] && ! grep -q '^Source:' familiar/$(CONTROL); then echo -e "\nNo Source: field in control file.  Aborting.\n"; exit 1; fi
+
+ipkg: check-source ipkg-prep clean
+	rm -rf familiar/dist
+	mkdir -p familiar/dist/CONTROL
+	sed 's:VERSION:$(VERSION):;s$$SOURCE$$$(SOURCE)$$' < familiar/$(CONTROL) > familiar/dist/CONTROL/control
+	if test -e familiar/conffiles; then install -m 644 familiar/conffiles familiar/dist/CONTROL; fi
+	if test -e familiar/preinst;   then install familiar/preinst   familiar/dist/CONTROL; fi
+	if test -e familiar/postinst;  then install familiar/postinst  familiar/dist/CONTROL; fi
+	if test -e familiar/prerm;     then install familiar/prerm     familiar/dist/CONTROL; fi
+	if test -e familiar/postrm;    then install familiar/postrm    familiar/dist/CONTROL; fi
+	$(MAKE) DESTDIR=`pwd`/familiar/dist PREFIX=/usr prefix=/usr DEBUG=no install-program
+	rm -rf familiar/dist.list
+	ipkg-build -o 0 -g 0 familiar/dist | sed 's/^Packaged .*into //; t 1; d; : 1; s:.*/::' >> familiar/dist.list
+	if [ "x$(LINGUAS)" != "x" ]; then make translation-ipkg; tr ' ' '\n' < translation-ipkgs.txt >> familiar/dist.list; fi
+	md5sum `cat familiar/dist.list` > $(PACKAGE)_$(VERSION).batch
+	rm -rf familiar/dist familiar/dist.list
+	$(MAKE) printinfo
+
+dpkg: dist
+	mkdir -p $(DEB_PATH)
+	( olddir=`pwd`; cd $(DEB_PATH); rm -rf $(PACKAGE)-$(VERSION); ln -s $$olddir/../$(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)_$(VERSION).orig.tar.gz ; tar xzf $(PACKAGE)_$(VERSION).orig.tar.gz )
+	mkdir -p $(DEB_PATH)/$(PACKAGE)-$(VERSION)/debian
+	for i in debian/*; do if test -f $$i; then cp $$i $(DEB_PATH)/$(PACKAGE)-$(VERSION)/debian/; fi; done
+
+CVSTAG := $(shell echo $(PACKAGE)-$(VERSION) | tr [a-z.] [A-Z_])
+printinfo:
+	@printf '-------------------------------------------------------------------------------\n'
+	@printf "If this becomes a package release, please add a CVS tag.\n"
+	@printf "You can use 'make tag' for that, it will execute\n"
+	@printf "   cvs tag %s\n" $(CVSTAG)
+	@printf "Please upload a tarball (created with 'make dist') to\n"
+	@printf "   ftp://ftp.handhelds.org/pub/projects/gpe/\n"
+	@printf "   (handhelds.org:~ftp/pub/projects/gpe/source)\n"
+	@printf "You can use 'make dist-upload' to do that.\n"
+	@printf "You are currently known as USER %s.\n" $(USER)
+	@printf '-------------------------------------------------------------------------------\n'
+
+tag: check-source
+	cvs tag $(CVSTAG)
+
+retag: check-source
+	cvs tag -F $(CVSTAG)
+
+source: tag dist-upload
+
+%.pc: %.pc.in
+	sed 's:PREFIX:$(PREFIX):;s:BUILDDIR:$(shell pwd):;s:VERSION:$(VERSION):' < $< > $@
+
+.c.o:;
+	$(CC) $(CFLAGS) $(CPPFLAGS) $(PACKAGE_CFLAGS) $(PACKAGE_CPPFLAGS) -c $< -o $@
diff -Naur gpe-sketchbook.orig/build/Makefile.translation gpe-sketchbook/build/Makefile.translation
--- gpe-sketchbook.orig/build/Makefile.translation	1970-01-01 02:00:00.000000000 +0200
+++ gpe-sketchbook/build/Makefile.translation	2007-02-10 17:21:46.170927636 +0200
@@ -0,0 +1,107 @@
+.SUFFIXES: .mo .po .pot .po8
+
+CONTROL = `if test -e familiar/control1; then echo control1; else echo control; fi`
+
+# use ipkg-build or ipkg-deb-build
+IPKG_BUILD := ipkg-build
+
+TRANSLATION_SITE := http://www.iro.umontreal.ca/~gnutra/maint
+
+ifeq ($(DIR_PO),)
+DIR_PO := po
+endif
+
+ifeq ($(BINPACKAGE),)
+BINPACKAGE := $(PACKAGE)
+endif
+
+mo-files = $(patsubst %,$(DIR_PO)/%.mo,$(LINGUAS))
+po-files = $(patsubst %,$(DIR_PO)/%.po,$(LINGUAS))
+
+ifeq ($(shell if [ -f $(PACKAGE).desktop.in ]; then echo present; fi;),present)
+desktop-files += $(PACKAGE).desktop
+endif
+
+ifneq ($(EXTRA_DESKTOPS),)
+desktop-files += $(patsubst %.desktop.in,%.desktop,$(EXTRA_DESKTOPS))
+endif
+
+all-mo: $(mo-files)
+
+all-desktop: $(desktop-files)
+
+install-mo: all-mo
+	if [ "$(ENABLE_NLS)" != "no" ]; then \
+		if [ "x$(LINGUAS)" != "x" ]; then \
+			for i in $(LINGUAS); do mkdir -p $(DESTDIR)$(PREFIX)/share/locale/$$i/LC_MESSAGES; install -m 644 $(DIR_PO)/$$i.mo $(DESTDIR)$(PREFIX)/share/locale/$$i/LC_MESSAGES/$(PACKAGE).mo; done \
+		fi; \
+	fi;
+
+.po8.mo:;
+	if [ "$(ENABLE_NLS)" != "no" ]; then \
+		msgfmt -o $@ $<; \
+	fi;
+
+.po.po8:;
+	CTYPE=`grep "^\"Content-Type:" $< | sed 's/^.*charset=//;s/\\\\.*//'`; sed "s/\(Content-Type: .*=\)$$CTYPE/\1UTF-8/" < $< | iconv -f $${CTYPE} -t UTF-8 >$@
+
+update-po: $(po-files) extract-po
+
+dist-prep: update-po freshen-po
+# empty
+
+ifeq ($(CVSBUILD),yes)
+ipkg-prep: freshen-po
+# empty
+endif
+
+extract-po:
+	mkdir -p $(DIR_PO)
+	( SOURCES="$(SOURCES)"; for DESK in $(PACKAGE).desktop.in $(EXTRA_DESKTOPS); do if [ -f $$DESK ]; then intltool-extract --type=gettext/ini $$DESK; SOURCES="$$SOURCES $${DESK}.h"; fi; done; if [ "x$$SOURCES" != "x" ]; then xgettext --add-comments=TRANSLATORS: -k_ -kN_ -o $(DIR_PO)/$(PACKAGE).pot.new $$SOURCES; fi )
+	if [ -f $(DIR_PO)/$(PACKAGE).pot.new ]; then if cmp -s $(DIR_PO)/$(PACKAGE).pot.new $(PACKAGE).pot; then rm $(DIR_PO)/$(PACKAGE).pot.new; else mv $(DIR_PO)/$(PACKAGE).pot.new $(DIR_PO)/$(PACKAGE).pot; fi; fi
+
+clean: clean-po clean-dist-translation
+
+clean-po:
+	rm -rf $(DIR_PO)/*.mo
+	for i in $(desktop-files); do if [ -f $$i.in ]; then rm -f $$i; rm -f $$i.in.h; fi; done
+
+%.desktop: %.desktop.in $(patsubst %,$(DIR_PO)/%.po,$(LINGUAS))
+	intltool-merge -u -d $(DIR_PO) $< $@
+
+freshen-po:
+	rm -rf tmp-po
+	mkdir tmp-po
+	cd tmp-po; for LANG in $(LINGUAS); do wget $(TRANSLATION_SITE)/$(PACKAGE)/$$LANG.po; done
+	for LANG in $(LINGUAS); do if [ ! -f $(DIR_PO)/$$LANG.po ] || ! cmp -s $(DIR_PO)/$$LANG.po tmp-po/$$LANG.po ; then mv tmp-po/$$LANG.po $(DIR_PO)/$$LANG.po; echo "Updated $$LANG translation"; fi; done
+	rm -rf tmp-po
+
+# ------------------------------------------------------------------------
+
+MAINTAINER = $(shell grep 'Maintainer: ' familiar/$(CONTROL) | cut -d ' ' -f 2-)
+
+ifndef BUILD
+BUILD = ../build
+endif
+
+transdist := familiar/dist-translation
+templates := $(BUILD)/familiar
+ipkglist  := translation-ipkgs.txt
+
+clean-dist-translation:
+	rm -rf $(transdist) $(ipkglist)
+
+real-translation-package: all-mo
+	rm -rf $(transdist) $(ipkglist)
+	for LINGUA in $(LINGUAS); do \
+		i=$$(echo $$LINGUA | tr '[A-Z_]' '[a-z+]'); \
+		mkdir -p $(transdist)/$$i/CONTROL; \
+		mkdir -p $(transdist)/$$i$(PREFIX)/share/locale/$$LINGUA/LC_MESSAGES; \
+		install -m 644 po/$$LINGUA.mo $(transdist)/$$i$(PREFIX)/share/locale/$$LINGUA/LC_MESSAGES/$(PACKAGE).mo; \
+		sed -e "s/<maintainer>/$(MAINTAINER)/;s/<package>/$(BINPACKAGE)/;s/<version>/$(VERSION)/;s/<language>/$$i/;s!<source>!$(SOURCE)!" $(templates)/control.translation > $(transdist)/$$i/CONTROL/control; \
+		install $(templates)/postinst.translation $(transdist)/$$i/CONTROL/postinst; \
+		$(IPKG_BUILD) -g 0 -o 0 $(transdist)/$$i | sed 's/^Packaged .*into //; t 1; d; : 1; s:.*/::' >> $(ipkglist); \
+	done
+
+translation-ipkg:
+	make PREFIX=/usr real-translation-package