~ubuntu-branches/ubuntu/oneiric/notecase/oneiric

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Bazaar Package Importer
  • Author(s): Arnaud Soyez
  • Date: 2008-11-10 11:29:57 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20081110112957-9uu6p24w7i0c7ib2
Tags: 1.9.7-0ubuntu1
* New Upstream Release
* Updated Standards-Version to 3.8.0, no changes needed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
#
5
5
# Usage: type "make help" for description of make options
6
6
#
7
 
# This makefile supports Linux (gcc/g++) and Windows (Mingw/Msys) builds
 
7
# This makefile was tested on Linux (gcc/g++), Windows (Mingw/Msys), OSX, OpenSolaris and FreeBSD
 
8
# Use "gmake" to compile on OSX and FreeBSD
8
9
#
9
 
 
10
 
VERSION=1.9.1
 
10
VERSION=1.9.7
11
11
 
12
12
# define install target dirs
13
13
prefix=/usr
16
16
 
17
17
# define top of RPM build area
18
18
topdir=/usr/src/redhat
 
19
docdir=$(datadir)/doc
 
20
TEST_TOP_DIR=$(shell ls $(topdir) 2>/dev/null)
 
21
ifneq ($(TEST_TOP_DIR),)
 
22
else
 
23
 #rpm build on Suse Linux
 
24
 topdir=/usr/src/packages
 
25
 docdir=$(datadir)/doc/packages
 
26
 
 
27
 TEST_TOP_DIR=$(shell ls $(topdir) 2>/dev/null)
 
28
 ifneq ($(TEST_TOP_DIR),)
 
29
 else
 
30
  topdir=$(HOME)/rpm/
 
31
  docdir=$(datadir)/doc
 
32
 endif
 
33
endif
19
34
 
20
35
# define source archive name
21
36
archive=notecase-$(VERSION)
26
41
 
27
42
ifneq ($(AUTODETECT_GNOME_VFS),)
28
43
 TEST_GNOME_VFS=$(shell pkg-config --libs gnome-vfs-2.0 2>/dev/null)
29
 
 ifneq ($(AUTODETECT_GNOME_VFS),)
 
44
 ifneq ($(TEST_GNOME_VFS),)
30
45
  HAVE_GNOME_VFS=1
31
46
 else
32
47
  HAVE_GNOME_VFS=
51
66
 CXX=g++
52
67
endif
53
68
 
 
69
PLATFORM="Linux"
 
70
 
54
71
TESTZAURUS=$(shell uname -a | grep zaurus)
55
72
ifneq ($(TESTZAURUS),)
56
73
  ZAURUS_BUILD=1
 
74
  PLATFORM="Zaurus"
57
75
endif
58
76
 
59
77
TESTFREEBSD=$(shell uname -a | grep FreeBSD)
60
78
ifneq ($(TESTFREEBSD),)
61
79
  FREEBSD_BUILD=1
 
80
  PLATFORM="FreeBsd"
62
81
endif
63
82
 
64
83
TESTDARWIN=$(shell uname -a | grep Darwin)
65
84
ifneq ($(TESTDARWIN),)
66
85
  OSX_BUILD=1
 
86
  PLATFORM="OSX"
 
87
endif
 
88
 
 
89
TESTSOLARIS=$(shell uname -a | grep SunOS)
 
90
ifneq ($(TESTSOLARIS),)
 
91
  SOLARIS_BUILD=1
 
92
  PLATFORM="Solaris"
67
93
endif
68
94
 
69
95
TESTDEB=$(shell which dpkg 2>/dev/null)
83
109
 ifeq ($(ARCH),ppc-darwin)
84
110
         BYTE_ORDER=-DSHA1_BIG_ENDIAN -DORDER_ABCD
85
111
   OSX_BUILD=1
 
112
   PLATFORM="OSX"
86
113
 else  
87
114
  TESTOSX=$(shell uname 2>/dev/null)
88
115
  ifeq ($(ARCH),Darwin)
89
116
    OSX_BUILD=1
 
117
    PLATFORM="OSX"
90
118
    ARCH=$(shell uname -m 2>/dev/null)
91
119
  else   
92
120
   ifeq ($(ARCH),armel)
96
124
                 ifeq ($(TEST),)
97
125
                 else 
98
126
                         NOKIA_MAEMO_BUILD=1
 
127
                         PLATFORM="Nokia Maemo"
99
128
                 endif  
100
129
    else
101
130
                 NOKIA_MAEMO_BUILD=2
 
131
                 PLATFORM="Nokia Maemo 2008"
102
132
    endif 
103
133
   endif
104
134
  endif
134
164
ifdef OSX_BUILD
135
165
 INSTALL=install -c
136
166
endif 
137
 
 
138
167
ifdef FREEBSD_BUILD
139
168
 INSTALL=install
140
169
endif
 
170
ifdef SOLARIS_BUILD
 
171
 INSTALL=ginstall
 
172
endif
141
173
 
142
174
#define proper sed (use gnused for Darwin?)
143
175
SED=sed -i
147
179
ifneq ($(FREEBSD_BUILD),)
148
180
  SED=sed -i.bak
149
181
endif
 
182
ifneq ($(SOLARIS_BUILD),)
 
183
  SED=/opt/csw/bin/gsed -i.bak
 
184
endif
150
185
 
151
186
MD5SUM=md5sum
152
187
ifneq ($(OSX_BUILD),)
153
188
   MD5SUM=gmd5sum
154
189
endif
155
190
MD5SUM_EXISTS=$(shell which $(MD5SUM)) 
 
191
 
 
192
ifneq ($(SOLARIS_BUILD),)
 
193
 #rpm build on OpenSolaris
 
194
 topdir=$(HOME)/packages
 
195
 docdir=$(datadir)/doc
 
196
endif
156
197
 
157
198
# define processing output
158
199
Q=@
177
218
ifdef WINDIR
178
219
 LD=$(QL) $(CXX) $(DEBUG) $(PROFILE) $(LDFLAGS) -L$(OBJ) -lz 
179
220
else
180
 
 LD=$(QL) $(CXX) $(DEBUG) $(PROFILE) $(LDFLAGS) -ldl
 
221
 ifdef FREEBSD_BUILD
 
222
  LD=$(QL) $(CXX) $(DEBUG) $(PROFILE) $(LDFLAGS)
 
223
 else
 
224
  LD=$(QL) $(CXX) $(DEBUG) $(PROFILE) $(LDFLAGS) -ldl
 
225
 endif
181
226
endif
182
227
 
 
228
ifndef SOLARIS_BUILD 
183
229
ifndef OSX_BUILD 
184
230
 ifndef WINDIR
185
231
   LD+= -pthread
186
232
 endif
187
233
endif
 
234
endif 
188
235
 
189
236
#
190
237
# define default project to be built
248
295
 endif
249
296
endif  
250
297
 
251
 
GTKCFLAGS=`pkg-config --cflags $(LIBS)` -I/target/include  -I/sw/include 
 
298
LIBSCFLAGS=`pkg-config --cflags $(LIBS) 2>/dev/null` 
 
299
GTKCFLAGS=$(LIBSCFLAGS) -I/target/include  -I/sw/include 
252
300
GTKLIBS=`pkg-config --libs $(LIBS)`
253
301
 
254
302
#
531
579
        @for i in `ls po/*.po`; do \
532
580
                loc=`basename $$i | cut -f1 -d.`; \
533
581
                rm -f po/messages.mo; \
534
 
                msgfmt $$i -o po/messages.mo; \
 
582
                msgfmt -o po/messages.mo $$i; \
535
583
                echo "Installing: $(DESTDIR)$(datadir)/locale/$$loc/LC_MESSAGES/notecase.mo";\
536
 
                if [ "$(OSX_BUILD)" = "1" ] || [ "$(FREEBSD_BUILD)" = "1" ]; then \
 
584
                if [ "$(OSX_BUILD)" = "1" ] || [ "$(FREEBSD_BUILD)" = "1" ] || [ "$(SOLARIS_BUILD)" = "1" ]; then \
537
585
                        mkdir -p $(DESTDIR)$(datadir)/locale/$$loc/LC_MESSAGES/; \
538
586
                fi; \
539
587
                $(INSTALL) -m 644 po/messages.mo "$(DESTDIR)$(datadir)/locale/$$loc/LC_MESSAGES/notecase.mo"; \
555
603
        install -d -m 755 $(DESTDIR)$(datadir)/mime/packages/
556
604
        install -d -m 755 $(DESTDIR)$(datadir)/pixmaps/
557
605
        $(INSTALL) -m 755 $(BIN)/notecase$(EXE) "$(DESTDIR)$(bindir)/notecase$(EXE)"
558
 
        $(INSTALL) -m 644 docs/help.ncd "$(DESTDIR)$(datadir)/doc/notecase/help.ncd"
 
606
        $(INSTALL) -m 644 docs/help.ncd "$(DESTDIR)$(docdir)/notecase/help.ncd"
559
607
        $(INSTALL) -m 644 docs/notecase.xml "$(DESTDIR)$(datadir)/mime/packages/notecase.xml"
560
608
        $(Q)if [ -n "$(NOKIA_MAEMO_BUILD)" ]; then \
561
609
                $(INSTALL) -m 644 docs/notecase.desktop "$(DESTDIR)$(datadir)/applications/hildon/notecase.desktop"; \
633
681
#   7. update version in the control file used to build Debian/Ubuntu .deb package
634
682
#
635
683
updatesrc:
636
 
        $(Q)echo 'Configuration: GNOME_VFS=$(HAVE_GNOME_VFS);DEBUG=$(DEBUG);PROFILE=$(PROFILE);BYTE_ORDER=$(BYTE_ORDER);' 
 
684
        $(Q)if [ "$(LIBSCFLAGS)" = "" ]; then \
 
685
                echo 'pkg-config error detected $(shell pkg-config --cflags $(LIBS))';\
 
686
                exit 1;\
 
687
        fi;  
 
688
        $(Q)echo 'Configuration: GNOME_VFS=$(HAVE_GNOME_VFS);DEBUG=$(DEBUG);PROFILE=$(PROFILE);BYTE_ORDER=$(BYTE_ORDER);PLATFORM=$(PLATFORM)' 
637
689
        $(Q)$(SED) 's/^Version:.*/Version:        $(VERSION)/' ./docs/notecase.spec
638
690
        $(Q)$(SED) 's/^Source:.*/Source:         $(archive)_src.tar.gz/' ./docs/notecase.spec
639
691
        $(Q)$(SED) 's/\#define APP_VER_STR .*/\#define APP_VER_STR "$(VERSION)"/' ./src/config.h
666
718
                        $(SED) 's/^Icon=notecase.*/Icon=notecase/' ./docs/notecase.desktop; \
667
719
                fi; \
668
720
        fi;
 
721
        $(Q)$(SED) 's:[/]*#define DOC_DIR_PATH.*:#define DOC_DIR_PATH "$(docdir)/notecase/":' ./src/config.h
669
722
        $(Q)$(SED) 's/^Version: .*/Version: $(VERSION)/' ./docs/control
670
723
        $(Q)$(SED) 's/^Version: .*/Version: $(VERSION)/' ./deb/control
671
724
        $(Q)$(SED) 's/^Architecture: .*/Architecture: $(ARCH)/' ./deb/control 
680
733
# - optional: convert sources to Unix text format (this is multiplatform project)
681
734
#
682
735
convertsrc:
683
 
        @dos2unix -q -k $(SRCPATH)/*.cpp $(SRCPATH)/*.h $(GUIPATH)/*.cpp $(GUIPATH)/*.h $(GUIPATH)/gui/*.cpp $(GUIPATH)/gui/*.h ./Makefile
 
736
        @dos2unix $(SRCPATH)/*.cpp $(SRCPATH)/*.h $(GUIPATH)/*.cpp $(GUIPATH)/*.h $(GUIPATH)/gui/*.cpp $(GUIPATH)/gui/*.h ./Makefile
684
737
        
685
738
#
686
739
# - update Linux mime/desktop system