|
|
# Library version | # Library version |
# | # |
LIBNAME=libcap | LIBNAME=libcap |
|
PYTHONMODNAME=_libcap.so |
|
PYTHONPYNAME=libcap.py |
# | # |
| |
FILES=cap_alloc cap_proc cap_extint cap_flag cap_text cap_sys | FILES=cap_alloc cap_proc cap_extint cap_flag cap_text cap_sys |
|
|
MAJLIBNAME=$(LIBNAME).so.$(VERSION) | MAJLIBNAME=$(LIBNAME).so.$(VERSION) |
MINLIBNAME=$(MAJLIBNAME).$(MINOR) | MINLIBNAME=$(MAJLIBNAME).$(MINOR) |
| |
|
ifdef PYTHON |
|
all: $(MINLIBNAME) $(LIBNAME).a $(PYTHONMODNAME) |
|
else |
all: $(MINLIBNAME) $(LIBNAME).a | all: $(MINLIBNAME) $(LIBNAME).a |
|
endif |
| |
_makenames: _makenames.c cap_names.sed | _makenames: _makenames.c cap_names.sed |
$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ | $(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ |
|
|
ln -sf $(MINLIBNAME) $(MAJLIBNAME) | ln -sf $(MINLIBNAME) $(MAJLIBNAME) |
ln -sf $(MAJLIBNAME) $(LIBNAME).so | ln -sf $(MAJLIBNAME) $(LIBNAME).so |
| |
|
libcap_wrap.c: include/sys/capability.h |
|
swig -python -o libcap_wrap.c include/sys/capability.h |
|
|
|
$(PYTHONMODNAME): $(OBJS) libcap_wrap.o |
|
$(LD) -x -shared -o $@ libcap_wrap.o $(OBJS) |
|
|
%.o: %.c $(INCLS) | %.o: %.c $(INCLS) |
$(CC) $(CFLAGS) -c $< -o $@ | $(CC) $(CFLAGS) -c $< -o $@ |
| |
|
|
ln -sf $(MINLIBNAME) $(LIBDIR)/$(MAJLIBNAME) | ln -sf $(MINLIBNAME) $(LIBDIR)/$(MAJLIBNAME) |
ln -sf $(MAJLIBNAME) $(LIBDIR)/$(LIBNAME).so | ln -sf $(MAJLIBNAME) $(LIBDIR)/$(LIBNAME).so |
-/sbin/ldconfig | -/sbin/ldconfig |
|
ifdef PYTHON |
|
mkdir -p $(PYTHONMODDIR) |
|
install -m 0644 $(PYTHONMODNAME) $(PYTHONMODDIR)/$(PYTHONMODNAME) |
|
install -m 0644 $(PYTHONPYNAME) $(PYTHONMODDIR)/$(PYTHONPYNAME) |
|
endif |
| |
clean: | clean: |
$(LOCALCLEAN) | $(LOCALCLEAN) |
rm -f $(OBJS) $(LOBJS) $(LIBNAME).a $(LIBNAME).so* | rm -f $(OBJS) $(LOBJS) $(LIBNAME).a $(LIBNAME).so* |
rm -f cap_names.h cap_names.sed _makenames |
rm -f cap_names.h cap_names.sed _makenames libcap_wrap.c |
cd include/sys && $(LOCALCLEAN) | cd include/sys && $(LOCALCLEAN) |
| |