On May 28, 2009 at 20:13, Juha Heinanen jh@tutpro.com wrote:
this is (in debian/rules) how i got my debian package built properly:
variables:
MAIN_NAME=sip-router LOCALBASE=$(CURDIR)/debian/$(MAIN_NAME) SCTP=1 MODULES= ... MODULES_S= ... MODULES_K= ...
configuration:
$(MAKE) cfg CFLAGS="$(CFLAGS)" SCTP=$(SCTP) MAIN_NAME=$(MAIN_NAME)
LOCALBASE=$(LOCALBASE) prefix=/usr cfg_prefix=$(LOCALBASE) [...]
You should not use LOCALBASE= and use instead BASEDIR=$(CURDIR)/debian/$(MAIN_NAME) and cfg_prefix=$(CURDIR)/debian/$(MAIN_NAME). prefix and cfg_target are ok.
compilation:
CC="$(CC)" $(MAKE) all
installation:
CC="$(CC)" $(MAKE) install basedir=$(LOCALBASE)
If you use BASEDIR or basedir in make cfg, you don't need to override it on make install. ( $(MAKE) install is enough).
Same for CC (if you add CC=$(CC) to make cfg you don't need to add it to $(MAKE) all or $(MAKE) install).
improvements are welcome.
Andrei