Lines 33-38
Link Here
|
33 |
# Library version |
33 |
# Library version |
34 |
# |
34 |
# |
35 |
LIBNAME=libcap |
35 |
LIBNAME=libcap |
|
|
36 |
STATLIBNAME=$(LIBNAME).a |
36 |
# |
37 |
# |
37 |
|
38 |
|
38 |
FILES=cap_alloc cap_proc cap_extint cap_flag cap_text cap_sys |
39 |
FILES=cap_alloc cap_proc cap_extint cap_flag cap_text cap_sys |
Lines 46-52
Link Here
|
46 |
MAJLIBNAME=$(LIBNAME).so.$(VERSION) |
47 |
MAJLIBNAME=$(LIBNAME).so.$(VERSION) |
47 |
MINLIBNAME=$(MAJLIBNAME).$(MINOR) |
48 |
MINLIBNAME=$(MAJLIBNAME).$(MINOR) |
48 |
|
49 |
|
49 |
all: $(MINLIBNAME) $(LIBNAME).a |
50 |
all: $(MINLIBNAME) $(STATLIBNAME) |
50 |
|
51 |
|
51 |
_makenames: _makenames.c cap_names.sed |
52 |
_makenames: _makenames.c cap_names.sed |
52 |
$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ |
53 |
$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ |
Lines 58-65
Link Here
|
58 |
@echo "=> making cap_names.c from <sys/capability.h>" |
59 |
@echo "=> making cap_names.c from <sys/capability.h>" |
59 |
@sed -ne '/^#define[ \t]CAP[_A-Z]\+[ \t]\+[0-9]\+/{s/^#define \([^ \t]*\)[ \t]*\([^ \t]*\)/ \{ \2, \"\1\" \},/;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;p;}' < include/sys/capability.h | fgrep -v 0x > cap_names.sed # @sed -ne '/^#define[ \t]CAP[_A-Z]\+[ \t]\+[0-9]\+/{s/^#define CAP_\([^ \t]*\)[ \t]*\([^ \t]*\)/ \{ \2, \"\1\" \},/;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;p;}' < /usr/include/linux/capability.h | fgrep -v 0x > cap_names.sed |
60 |
@sed -ne '/^#define[ \t]CAP[_A-Z]\+[ \t]\+[0-9]\+/{s/^#define \([^ \t]*\)[ \t]*\([^ \t]*\)/ \{ \2, \"\1\" \},/;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;p;}' < include/sys/capability.h | fgrep -v 0x > cap_names.sed # @sed -ne '/^#define[ \t]CAP[_A-Z]\+[ \t]\+[0-9]\+/{s/^#define CAP_\([^ \t]*\)[ \t]*\([^ \t]*\)/ \{ \2, \"\1\" \},/;y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;p;}' < /usr/include/linux/capability.h | fgrep -v 0x > cap_names.sed |
60 |
|
61 |
|
61 |
$(LIBNAME).a: $(OBJS) |
62 |
$(STATLIBNAME): $(OBJS) |
62 |
ar cruv $(LIBNAME).a $(OBJS) |
63 |
ar csruv $(STATLIBNAME) $(OBJS) |
63 |
|
64 |
|
64 |
$(MINLIBNAME): $(LOBJS) |
65 |
$(MINLIBNAME): $(LOBJS) |
65 |
$(CC) -shared -fPIC -Wl,-soname,$(MAJLIBNAME) -o $@ $(LOBJS) |
66 |
$(CC) -shared -fPIC -Wl,-soname,$(MAJLIBNAME) -o $@ $(LOBJS) |
Lines 77-83
Link Here
|
77 |
mkdir -p -m 0755 $(INCDIR)/sys |
78 |
mkdir -p -m 0755 $(INCDIR)/sys |
78 |
install -m 0644 include/sys/capability.h $(INCDIR)/sys |
79 |
install -m 0644 include/sys/capability.h $(INCDIR)/sys |
79 |
mkdir -p -m 0755 $(LIBDIR) |
80 |
mkdir -p -m 0755 $(LIBDIR) |
80 |
install -m 0644 $(LIBNAME).a $(LIBDIR) |
81 |
install -m 0644 $(STATLIBNAME) $(LIBDIR) |
81 |
install -m 0644 $(MINLIBNAME) $(LIBDIR)/$(MINLIBNAME) |
82 |
install -m 0644 $(MINLIBNAME) $(LIBDIR)/$(MINLIBNAME) |
82 |
ln -sf $(MINLIBNAME) $(LIBDIR)/$(MAJLIBNAME) |
83 |
ln -sf $(MINLIBNAME) $(LIBDIR)/$(MAJLIBNAME) |
83 |
ln -sf $(MAJLIBNAME) $(LIBDIR)/$(LIBNAME).so |
84 |
ln -sf $(MAJLIBNAME) $(LIBDIR)/$(LIBNAME).so |
Lines 85-91
Link Here
|
85 |
|
86 |
|
86 |
clean: |
87 |
clean: |
87 |
$(LOCALCLEAN) |
88 |
$(LOCALCLEAN) |
88 |
rm -f $(OBJS) $(LOBJS) $(LIBNAME).a $(LIBNAME).so* |
89 |
rm -f $(OBJS) $(LOBJS) $(STATLIBNAME) $(LIBNAME).so* |
89 |
rm -f cap_names.h cap_names.sed _makenames |
90 |
rm -f cap_names.h cap_names.sed _makenames |
90 |
cd include/sys && $(LOCALCLEAN) |
91 |
cd include/sys && $(LOCALCLEAN) |
91 |
|
92 |
|