> The schily makefilesystem supports simultaneous
> builds on the same file tree 
> (e.g. NFS mounted) on different plaforms since ~
> 1994.

...

> PKG   :sh=    sed -n 's/^PKG=//p' pkginfo
> VERSION       :sh=    sed -n 's/^VERSION=\([^,]*\).*/\1/p'
> pkginfo
> NAME  :sh=    sed -n 's/^NAME=//p' pkginfo|awk '{print
> $1}'
> OS_NAME :sh=  uname -s
> DATE  :sh=    date '+REV=%Y.%m.%d'
> 
> VENDOR=               -CSW
> PROTOTYPE=    prototype
> 
> $(SRCROOT)/packages/$(OARCH):
>               $(MKDIR) -p $@
> 
> all: $(SRCROOT)/packages/$(OARCH)
> pkgmk -o -b `pwd`/$(SRCROOT)/$(PROTODIR)/$(INS_BASE)
> ) -d $(SRCROOT)/packages/$(OARCH) -a $(P_ARCH) \
> -v $(VERSION),$(DATE) -f $(PROTOTYPE)
> PE) BASEDIR=$(INS_BASE)
>       pkgtrans -s $(SRCROOT)/packages/$(OARCH) \
>                       $(NAME)-$(VERSION),$(DATE)-$(OS_NAME)$(OSREL)-$(P_A
> RCH)$(VENDOR).pkg $(PKG)
> gzip -9f
> f
> $(SRCROOT)/packages/$(OARCH)/$(NAME)-$(VERSION),$(DATE
> )-$(OS_NAME)$(OSREL)-$(P_ARCH)$(VENDOR).pkg

I do a very similar thing in some of my Makefiles. However I miss two things:

a) automatic mapping between a platform and her 64-bit counterpart (eg. i386 -> 
amd64) - as far as I know, there is no concoction of commands that will do that 
reliably

b) NFS mappings not just for Solaris, but other UNIXes and their supported 
platforms and revision (i.e. IRIX 6.5, IRIX64 6.5, HP-UX 10.20 hppa, HP-UX 
11iv3 ia64, ...) `uname` just doesn't cut it, and that's about as close as one 
comes to abstracting platform info programatically.
 
 
This message posted from opensolaris.org
_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to