~ubuntu-branches/ubuntu/saucy/libdvdread/saucy

« back to all changes in this revision

Viewing changes to .pc/102-reorder-linkage.patch/Makefile

  • Committer: Package Import Robot
  • Author(s): Bryce Harrington
  • Date: 2011-11-28 17:12:51 UTC
  • mfrom: (1.1.4) (3.2.10 sid)
  • Revision ID: package-import@ubuntu.com-20111128171251-fxbi0nd6rrz3lsfb
Tags: 4.2.0-1ubuntu1
* Merge from debian testing.  Remaining changes:
  - Re-add missing install-css.sh. Update the script with patch by Gene Cumm
    for dynamic version calculation.
  - debian/control: add Suggests for install-css.sh on wget, debhelper, etc.
  - debian/rules: install install-css.sh, leave perms executable.
  - 100-quell-vts-tmapt-warning.patch - Don't recommend sending bug
    reports when VTS_TMAPT is missing
  - 102-reorder-linkage.patch - Fix link order for shared library loading.
* Drop 101-fix-msb-unicode.patch; fixed upstream.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
include config.mak
 
2
 
 
3
.SUFFIXES: .so
 
4
 
 
5
AR=ar
 
6
LD=ld
 
7
RANLIB=ranlib
 
8
 
 
9
VPATH+= $(SRC_PATH_BARE)/src
 
10
 
 
11
CFLAGS += $(USEDEBUG) -Wall -funsigned-char
 
12
CFLAGS += -I$(CURDIR) -I$(SRC_PATH)/src
 
13
CFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
 
14
CFLAGS += -DHAVE_CONFIG_H -DHAVE_DLFCN_H
 
15
 
 
16
L=libdvdread
 
17
DVDREAD_L=libdvdread
 
18
DVDREAD_LIB = $(DVDREAD_L).a
 
19
DVDREAD_SHLIB = $(DVDREAD_L).so
 
20
VPATH+= $(SRC_PATH_BARE)/src
 
21
DVDREAD_HEADERS = src/dvdread/dvd_reader.h \
 
22
        src/dvdread/ifo_print.h \
 
23
        src/dvdread/ifo_read.h \
 
24
        src/dvdread/ifo_types.h \
 
25
        src/dvdread/nav_print.h \
 
26
        src/dvdread/nav_read.h \
 
27
        src/dvdread/dvd_udf.h \
 
28
        src/dvdread/nav_types.h \
 
29
        src/dvdread/bitreader.h
 
30
DVDREAD_SRCS = dvd_input.c dvd_reader.c dvd_udf.c ifo_print.c ifo_read.c \
 
31
        md5.c nav_print.c nav_read.c bitreader.c
 
32
CFLAGS += -I$(SRC_PATH)/src
 
33
 
 
34
LIB = $(L).a
 
35
SHLIB = $(L).so
 
36
 
 
37
.OBJDIR=        obj
 
38
DEPFLAG = -M
 
39
 
 
40
OBJS = $(patsubst %.c,%.o, $(SRCS))
 
41
DVDREAD_OBJS = $(patsubst %.c,%.o, $(DVDREAD_SRCS))
 
42
SHOBJS = $(patsubst %.c,%.so, $(SRCS))
 
43
DVDREAD_SHOBJS = $(patsubst %.c,%.so, $(DVDREAD_SRCS))
 
44
DEPS= ${OBJS:%.o=%.d}
 
45
DVDREAD_DEPS= ${DVDREAD_OBJS:%.o=%.d}
 
46
 
 
47
BUILDDEPS = Makefile config.mak
 
48
 
 
49
ifeq ($(BUILD_SHARED),yes)
 
50
all:    $(SHLIB) $(DVDREAD_SHLIB) dvdread-config pkgconfig
 
51
install: $(SHLIB) $(DVDREAD_SHLIB) install-shared install-dvdread-config install-pkgconfig
 
52
endif
 
53
 
 
54
ifeq ($(BUILD_STATIC),yes)
 
55
all:    $(LIB) $(DVDREAD_LIB) dvdread-config pkgconfig
 
56
install: $(LIB) $(DVDREAD_LIB) install-static install-dvdread-config install-pkgconfig
 
57
endif
 
58
 
 
59
install: install-headers
 
60
 
 
61
# Let version.sh create version.h
 
62
 
 
63
SVN_ENTRIES = $(SRC_PATH_BARE)/.svn/entries
 
64
ifeq ($(wildcard $(SVN_ENTRIES)),$(SVN_ENTRIES))
 
65
version.h: $(SVN_ENTRIES)
 
66
endif
 
67
 
 
68
version.h:
 
69
        sh $(SRC_PATH)/version.sh $(SRC_PATH) "$(SHLIB_VERSION)"
 
70
 
 
71
$(SRCS) $(DVDREAD_SRCS): version.h
 
72
 
 
73
 
 
74
# General targets
 
75
 
 
76
${DVDREAD_LIB}: version.h $(DVDREAD_OBJS) $(BUILDDEPS)
 
77
        cd $(.OBJDIR) && $(AR) rc $@ $(DVDREAD_OBJS)
 
78
        cd $(.OBJDIR) && $(RANLIB) $@
 
79
 
 
80
${DVDREAD_SHLIB}: version.h $(DVDREAD_SHOBJS) $(BUILDDEPS)
 
81
        cd $(.OBJDIR) && $(CC) $(SHLDFLAGS) $(LDFLAGS) -ldl -Wl,-soname=$(DVDREAD_SHLIB).$(SHLIB_MAJOR) -o $@ $(DVDREAD_SHOBJS)
 
82
 
 
83
.c.so:  $(BUILDDEPS)
 
84
        cd $(.OBJDIR) && $(CC) -fPIC -DPIC -MD $(CFLAGS) -c -o $@ $<
 
85
 
 
86
.c.o:   $(BUILDDEPS)
 
87
        cd $(.OBJDIR) && $(CC) -MD $(CFLAGS) -c -o $@ $<
 
88
 
 
89
 
 
90
# Install targets
 
91
 
 
92
install-headers:
 
93
        install -d $(DESTDIR)$(dvdread_incdir)
 
94
        install -m 644 $(DVDREAD_HEADERS) $(DESTDIR)$(dvdread_incdir)
 
95
 
 
96
install-shared: $(SHLIB)
 
97
        install -d $(DESTDIR)$(shlibdir)
 
98
 
 
99
        install $(INSTALLSTRIP) -m 755 $(.OBJDIR)/$(SHLIB) \
 
100
                $(DESTDIR)$(shlibdir)/$(SHLIB).$(SHLIB_VERSION)
 
101
 
 
102
        cd $(DESTDIR)$(shlibdir) && \
 
103
                ln -sf $(SHLIB).$(SHLIB_VERSION) $(SHLIB).$(SHLIB_MAJOR)
 
104
        cd $(DESTDIR)$(shlibdir) && \
 
105
                ln -sf $(SHLIB).$(SHLIB_MAJOR) $(SHLIB)
 
106
 
 
107
        install $(INSTALLSTRIP) -m 755 $(.OBJDIR)/$(DVDREAD_SHLIB) \
 
108
                $(DESTDIR)$(shlibdir)/$(DVDREAD_SHLIB).$(SHLIB_VERSION)
 
109
        cd $(DESTDIR)$(shlibdir) && \
 
110
                ln -sf $(DVDREAD_SHLIB).$(SHLIB_VERSION) $(DVDREAD_SHLIB).$(SHLIB_MAJOR)
 
111
        cd $(DESTDIR)$(shlibdir) && \
 
112
                ln -sf $(DVDREAD_SHLIB).$(SHLIB_MAJOR) $(DVDREAD_SHLIB)
 
113
 
 
114
install-static: $(LIB)
 
115
        install -d $(DESTDIR)$(libdir)
 
116
 
 
117
        install $(INSTALLSTRIP) -m 755 $(.OBJDIR)/$(LIB) $(DESTDIR)$(libdir)/$(LIB)
 
118
        install $(INSTALLSTRIP) -m 755 $(.OBJDIR)/$(DVDREAD_LIB) $(DESTDIR)$(libdir)/$(DVDREAD_LIB)
 
119
 
 
120
 
 
121
# Clean targets
 
122
 
 
123
clean:
 
124
        rm -rf  *~ $(.OBJDIR)/* version.h
 
125
 
 
126
 
 
127
distclean: clean
 
128
        find . -name "*~" | xargs rm -rf
 
129
        rm -rf config.mak $(.OBJDIR)
 
130
 
 
131
dvdread-config: $(.OBJDIR)/dvdread-config
 
132
$(.OBJDIR)/dvdread-config: $(BUILDDEPS)
 
133
        @echo '#!/bin/sh' > $(.OBJDIR)/dvdread-config
 
134
        @echo 'prefix='$(PREFIX) >> $(.OBJDIR)/dvdread-config
 
135
        @echo 'libdir='$(shlibdir) >> $(.OBJDIR)/dvdread-config
 
136
        @echo 'version='$(SHLIB_VERSION) >> $(.OBJDIR)/dvdread-config
 
137
        @echo >> $(.OBJDIR)/dvdread-config
 
138
        cat $(SRC_PATH_BARE)/misc/dvdread-config.sh >> $(.OBJDIR)/dvdread-config
 
139
        chmod 0755 $(.OBJDIR)/dvdread-config
 
140
 
 
141
install-dvdread-config: dvdread-config
 
142
        install -d $(DESTDIR)$(PREFIX)/bin
 
143
        install -m 0755 $(.OBJDIR)/dvdread-config $(DESTDIR)$(PREFIX)/bin/dvdread-config
 
144
 
 
145
pcedit = sed \
 
146
        -e 's,@prefix@,$(PREFIX),' \
 
147
        -e 's,@exec_prefix@,$(PREFIX),' \
 
148
        -e 's,@libdir@,$(shlibdir),' \
 
149
        -e 's,@includedir@,$(PREFIX)/include,' \
 
150
        -e 's,@VERSION@,$(SHLIB_VERSION),'
 
151
 
 
152
pkgconfig: $(.OBJDIR)/dvdread.pc
 
153
$(.OBJDIR)/dvdread.pc: misc/dvdread.pc.in $(BUILDDEPS)
 
154
        $(pcedit) $< > $@
 
155
 
 
156
install-pkgconfig: $(.OBJDIR)/dvdread.pc
 
157
        install -d $(DESTDIR)$(libdir)/pkgconfig
 
158
        install -m 0644 $(.OBJDIR)/dvdread.pc $(DESTDIR)$(libdir)/pkgconfig
 
159
 
 
160
vpath %.so ${.OBJDIR}
 
161
vpath %.o ${.OBJDIR}
 
162
vpath ${LIB} ${.OBJDIR}
 
163
 
 
164
# include dependency files if they exist
 
165
$(addprefix ${.OBJDIR}/, ${DEPS}): ;
 
166
-include $(addprefix ${.OBJDIR}/, ${DEPS})