diff options
author | Andrew Stormont <astormont@racktopsystems.com> | 2019-09-04 15:57:56 +0100 |
---|---|---|
committer | Andrew Stormont <astormont@racktopsystems.com> | 2019-09-27 23:36:30 +0100 |
commit | 0ae9a84f82e18b30b7354ca5193afdbbb1cdc880 (patch) | |
tree | 28b6af611a075fd3f997ae03a5badd5e556c7a09 | |
parent | 2b292e00835d471d54a29c338155ab9d5756c18d (diff) | |
download | illumos-joyent-0ae9a84f82e18b30b7354ca5193afdbbb1cdc880.tar.gz |
7661 illumos should provide 64bit perl modules
Reviewed by: Andy Fiddaman <andy@omniosce.org>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Dan McDonald <danmcd@joyent.com>
-rw-r--r-- | usr/src/Makefile.master | 30 | ||||
-rw-r--r-- | usr/src/Makefile.master.64 | 23 | ||||
-rw-r--r-- | usr/src/cmd/perl/Makefile.perl | 15 | ||||
-rw-r--r-- | usr/src/cmd/perl/Makefile.targ | 35 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/BSM/Makefile | 6 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Intrs/Makefile | 11 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Kstat/Makefile | 11 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/Makefile | 11 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Pg/Makefile | 6 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Project/Makefile | 11 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Task/Makefile | 11 | ||||
-rw-r--r-- | usr/src/cmd/perl/contrib/Sun/Solaris/Utils/Makefile | 10 | ||||
-rw-r--r-- | usr/src/lib/Makefile.lib | 5 | ||||
-rw-r--r-- | usr/src/pkg/Makefile | 4 | ||||
-rw-r--r-- | usr/src/pkg/manifests/runtime-perl-module-sun-solaris.mf | 110 | ||||
-rw-r--r-- | usr/src/pkg/manifests/system-extended-system-utilities.mf | 2 | ||||
-rw-r--r-- | usr/src/tools/env/illumos.sh | 8 |
17 files changed, 227 insertions, 82 deletions
diff --git a/usr/src/Makefile.master b/usr/src/Makefile.master index 375f4fb01f..892c447a49 100644 --- a/usr/src/Makefile.master +++ b/usr/src/Makefile.master @@ -26,6 +26,7 @@ # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. # Copyright 2015 Gary Mills # Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com> +# Copyright 2016 RackTop Systems. # Copyright 2016 Toomas Soome <tsoome@me.com> # Copyright 2018 OmniOS Community Edition (OmniOSce) Association. # Copyright 2019, Joyent, Inc. @@ -193,8 +194,11 @@ FIND= /usr/bin/find PERL= /usr/bin/perl PERL_VERSION= 5.10.0 PERL_PKGVERS= -510 -PERL_ARCH = i86pc-solaris-64int -$(SPARC_BLD)PERL_ARCH = sun4-solaris-64int +PERL_MACH= i86pc +$(SPARC_BLD)PERL_MACH= sun4 +PERL_VARIANT= +PERL_ARCH= $(PERL_MACH)-solaris$(PERL_VARIANT)-64int +PERL_ARCH64= $(PERL_MACH)-solaris$(PERL_VARIANT)-64 PYTHON_VERSION= 2.7 PYTHON_PKGVERS= -27 PYTHON_SUFFIX= @@ -794,13 +798,18 @@ CCEXTNEEDED = -lCrun -lCstd $(__GNUC)CCNEEDED = -L$(GCCLIBDIR) -lstdc++ -lgcc_s $(__GNUC)CCEXTNEEDED = $(CCNEEDED) +CCNEEDED64 = -lCrun +CCEXTNEEDED64 = -lCrun -lCstd +$(__GNUC64)CCNEEDED64 = -L$(GCCLIBDIR) -lstdc++ -lgcc_s +$(__GNUC64)CCEXTNEEDED = $(CCNEEDED64) + LINK.c= $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) LINK64.c= $(CC) $(CFLAGS64) $(CPPFLAGS) $(LDFLAGS) NORUNPATH= -norunpath -nolib LINK.cc= $(CCC) $(CCFLAGS) $(CPPFLAGS) $(NORUNPATH) \ $(LDFLAGS) $(CCNEEDED) LINK64.cc= $(CCC) $(CCFLAGS64) $(CPPFLAGS) $(NORUNPATH) \ - $(LDFLAGS) $(CCNEEDED) + $(LDFLAGS) $(CCNEEDED64) # # lint macros @@ -843,6 +852,7 @@ LINT.s= $(LINT.c) # # For now at least, we cross-compile amd64 on i386 machines. NATIVE_MACH= $(MACH:amd64=i386) +NATIVE_MACH64= $(MACH64) # Define native compilation macros # @@ -907,6 +917,13 @@ NATIVEAS= $($(NATIVE_MACH)_AS) NATIVELD= $($(NATIVE_MACH)_LD) NATIVELINT= $($(NATIVE_MACH)_LINT) +NATIVECC64= $($(NATIVE_MACH64)_CC) +NATIVECCC64= $($(NATIVE_MACH64)_CCC) +NATIVECPP64= $($(NATIVE_MACH64)_CPP) +NATIVEAS64= $($(NATIVE_MACH64)_AS) +NATIVELD64= $($(NATIVE_MACH64)_LD) +NATIVELINT64= $($(NATIVE_MACH64)_LINT) + # # Makefile.master.64 overrides these settings # @@ -917,6 +934,13 @@ AS= $(NATIVEAS) LD= $(NATIVELD) LINT= $(NATIVELINT) +CC64= $(NATIVECC64) +CCC64= $(NATIVECCC64) +CPP64= $(NATIVECPP64) +AS64= $(NATIVEAS64) +LD64= $(NATIVELD64) +LINT64= $(NATIVELINT64) + # Pass -Y flag to cpp (method of which is release-dependent) CCYFLAG= -Y I, diff --git a/usr/src/Makefile.master.64 b/usr/src/Makefile.master.64 index a06525bd6d..c0db926f93 100644 --- a/usr/src/Makefile.master.64 +++ b/usr/src/Makefile.master.64 @@ -21,6 +21,7 @@ # # Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. # Copyright 2014 Garrett D'Amore <garrett@damore.org> +# Copyright 2016 RackTop Systems. # # rebind basic build macros to 64-bit versions @@ -56,25 +57,19 @@ GCCLIBDIR= $(GCCLIBDIR64) # # Override Makefile.master's settings of CC, CCC, AS and LINT # -CC= $($(MACH64)_CC) -CCC= $($(MACH64)_CCC) -CPP= $($(MACH64)_CPP) -AS= $($(MACH64)_AS) -LD= $($(MACH64)_LD) -LINT= $($(MACH64)_LINT) +CC= $(CC64) +CCC= $(CCC64) +CPP= $(CPP64) +AS= $(AS64) +LD= $(LD64) +LINT= $(LINT64) -BUILD.SO= $(CC) $(CFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) \ - $(PICS) $(EXTPICS) -L $(ROOTLIBDIR64) $(LDLIBS) +BUILD.SO= $(BUILD64.SO) +BUILDCCC.SO= $(BUILDCCC64.SO) # # ld(1) requires the -64 option to create a 64-bit filter solely from a mapfile # MAPFILECLASS= -64 -CCNEEDED = -lCrun -$(__GNUC64)CCNEEDED = -L$(GCCLIBDIR) -lstdc++ -$(__GNUC64)CCNEEDED += -lgcc_s - -BUILDCCC.SO= $(CCC) $(CCFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) \ - $(PICS) $(EXTPICS) $(LDLIBS) $(CCNEEDED) MAPFILE.NGB = $(MAPFILE.NGB_$(MACH64)) diff --git a/usr/src/cmd/perl/Makefile.perl b/usr/src/cmd/perl/Makefile.perl index 441f3de665..823c2d048d 100644 --- a/usr/src/cmd/perl/Makefile.perl +++ b/usr/src/cmd/perl/Makefile.perl @@ -9,8 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # include $(SRC)/lib/Makefile.lib @@ -22,16 +22,29 @@ include $(SRC)/lib/Makefile.lib PERLDIR = $(ADJUNCT_PROTO)/usr/perl5/$(PERL_VERSION) PERLLIBDIR = $(PERLDIR)/lib/$(PERL_ARCH) PERLINCDIR = $(PERLLIBDIR)/CORE +PERLLIBDIR64 = $(PERLDIR)/lib/$(PERL_ARCH64) +PERLINCDIR64 = $(PERLLIBDIR64)/CORE PERLMOD = $(MODULE).pm PERLEXT = $(MACH)/$(MODULE).so +PERLEXT64 = $(MACH64)/$(MODULE).so ROOTPERLDIR = $(ROOT)/usr/perl5/$(PERL_VERSION) ROOTPERLLIBDIR = $(ROOTPERLDIR)/lib/$(PERL_ARCH) ROOTPERLMODDIR = $(ROOTPERLLIBDIR)/Sun/Solaris ROOTPERLEXTDIR = $(ROOTPERLLIBDIR)/auto/Sun/Solaris/$(MODULE) +ROOTPERLLIBDIR64 = $(ROOTPERLDIR)/lib/$(PERL_ARCH64) +ROOTPERLMODDIR64 = $(ROOTPERLLIBDIR64)/Sun/Solaris +ROOTPERLEXTDIR64 = $(ROOTPERLLIBDIR64)/auto/Sun/Solaris/$(MODULE) ROOTPERLMOD = $(ROOTPERLMODDIR)/$(MODULE).pm ROOTPERLEXT = $(ROOTPERLEXTDIR)/$(MODULE).so +ROOTPERLMOD64 = $(ROOTPERLMODDIR64)/$(MODULE).pm +ROOTPERLEXT64 = $(ROOTPERLEXTDIR64)/$(MODULE).so + +XSUBPP = $(PERLDIR)/bin/$(MACH)/perl $(PERLDIR)/lib/ExtUtils/xsubpp \ + -typemap $(PERLDIR)/lib/ExtUtils/typemap +XSUBPP64 = $(PERLDIR)/bin/$(MACH64)/perl $(PERLDIR)/lib/ExtUtils/xsubpp \ + -typemap $(PERLDIR)/lib/ExtUtils/typemap CSTD = $(CSTD_GNU99) diff --git a/usr/src/cmd/perl/Makefile.targ b/usr/src/cmd/perl/Makefile.targ index ec6110c5cb..d2a04232d7 100644 --- a/usr/src/cmd/perl/Makefile.targ +++ b/usr/src/cmd/perl/Makefile.targ @@ -9,45 +9,66 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright (c) 2016 Racktop Systems. # Copyright (c) 2018, Joyent, Inc. -# Link against libc as perl solaris specs +# Link against libc as per solaris specs $(PERLEXT):= LDLIBS += -lc +$(PERLEXT64):= LDLIBS += -lc # Allow for undefined symbols satisfied by perl $(PERLEXT):= ZDEFS = +$(PERLEXT64):= ZDEFS = $(ROOTPERLEXT) := FILEMODE = 0555 $(ROOTPERLMOD) := FILEMODE = 0444 +$(ROOTPERLEXT64) := FILEMODE = 0555 +$(ROOTPERLMOD64) := FILEMODE = 0444 # CFLAGS for perl, specifically. PCFLAGS= -DPERL_EUPXS_ALWAYS_EXPORT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \ -DPERL_USE_SAFE_PUTENV -D_TS_ERRNO +PCFLAGS64= -DPERL_EUPXS_ALWAYS_EXPORT -D_LARGEFILE_SOURCE64 \ + -DPERL_USE_SAFE_PUTENV -D_TS_ERRNO SMATCH=off -$(MACH): +$(MACH) $(MACH64): $(INS.dir) $(PERLEXT): $(MACH)/$(MODULE).o $(BUILD.SO) $(MACH)/$(MODULE).o +$(PERLEXT64): $(MACH64)/$(MODULE).o + $(BUILD64.SO) $(MACH64)/$(MODULE).o + $(MACH)/$(MODULE).o: $(MACH)/$(MODULE).c $(COMPILE.c) $(PCFLAGS) $(C_PICFLAGS) -I$(PERLINCDIR) $< -o $@ -$(MACH)/$(MODULE).c: $(MACH) $(MODULE).xs - $(PERLDIR)/bin/xsubpp $(XSUBPPFLAGS) $(MODULE).xs >$@ +$(MACH64)/$(MODULE).o: $(MACH64)/$(MODULE).c + $(COMPILE64.c) $(PCFLAGS64) $(C_PICFLAGS) -I$(PERLINCDIR64) $< -o $@ + +$(MACH)/$(MODULE).c: $(MACH) $(MODULE).xs + $(XSUBPP) $(XSUBPPFLAGS) $(MODULE).xs >$@ -$(ROOTPERLMODDIR): +$(MACH64)/$(MODULE).c: $(MACH64) $(MODULE).xs + $(XSUBPP64) $(XSUBPPFLAGS64) $(MODULE).xs >$@ + +$(ROOTPERLMODDIR) $(ROOTPERLMODDIR64): $(INS.dir) $(ROOTPERLMOD): $(ROOTPERLMODDIR) $(MODULE).pm $(RM) $@; $(INS) -s -m $(FILEMODE) -f $^ -$(ROOTPERLEXTDIR): +$(ROOTPERLMOD64): $(ROOTPERLMODDIR64) $(MODULE).pm + $(RM) $@; $(INS) -s -m $(FILEMODE) -f $^ + +$(ROOTPERLEXTDIR) $(ROOTPERLEXTDIR64): $(INS.dir) $(ROOTPERLEXT): $(ROOTPERLEXTDIR) $(MACH)/$(MODULE).so $(RM) $@; $(INS) -s -m $(FILEMODE) -f $^ + +$(ROOTPERLEXT64): $(ROOTPERLEXTDIR64) $(MACH64)/$(MODULE).so + $(RM) $@; $(INS) -s -m $(FILEMODE) -f $^ diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/BSM/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/BSM/Makefile index e6bf6fa9f8..df94b776a6 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/BSM/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/BSM/Makefile @@ -9,14 +9,15 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = _BSMparse include $(SRC)/cmd/perl/Makefile.perl -# Install module into arch independant directory +# Install module into arch independent directory ROOTPERLMODDIR = $(ROOTPERLDIR)/lib/Sun/Solaris/BSM include $(SRC)/cmd/perl/Makefile.targ @@ -28,4 +29,3 @@ all: $(PERLMOD) install: $(ROOTPERLMOD) clean clobber: - $(RM) -r $(MACH) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Intrs/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Intrs/Makefile index 27085c3a0e..b23fb528fb 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Intrs/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Intrs/Makefile @@ -9,7 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Intrs @@ -24,9 +25,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Kstat/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Kstat/Makefile index 03519911aa..49a63b172a 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Kstat/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Kstat/Makefile @@ -10,7 +10,8 @@ # # Copyright 2014 Gary Mills # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Kstat @@ -33,9 +34,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/Makefile index e158241e86..e2d641dbd8 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/Makefile @@ -9,7 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Lgrp @@ -28,9 +29,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Pg/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Pg/Makefile index 681e65aa46..0491584ea7 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Pg/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Pg/Makefile @@ -9,14 +9,15 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Pg include $(SRC)/cmd/perl/Makefile.perl -# Install module into arch independant directory +# Install module into arch independent directory ROOTPERLMODDIR = $(ROOTPERLDIR)/lib/Sun/Solaris include $(SRC)/cmd/perl/Makefile.targ @@ -28,4 +29,3 @@ all: $(PERLMOD) install: $(ROOTPERLMOD) clean clobber: - $(RM) -r $(MACH) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Makefile index f05200e560..56e93da14a 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Makefile @@ -9,7 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Project @@ -28,9 +29,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/Makefile index 1fb3235e1a..0d4bed08ce 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/Makefile @@ -9,7 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. +# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Task @@ -24,9 +25,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Utils/Makefile b/usr/src/cmd/perl/contrib/Sun/Solaris/Utils/Makefile index 107c496268..d64b4bc9c6 100644 --- a/usr/src/cmd/perl/contrib/Sun/Solaris/Utils/Makefile +++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Utils/Makefile @@ -9,8 +9,8 @@ # http://www.illumos.org/license/CDDL. # # -# Copyright (c) 2014 Racktop Systems. # Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # MODULE = Utils @@ -25,9 +25,11 @@ include $(SRC)/cmd/perl/Makefile.targ .KEEP_STATE: -all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL32)all: $(PERLEXT) $(PERLMOD) +$(BUILDPERL64)all: $(PERLEXT64) $(PERLMOD) -install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL32)install: $(ROOTPERLEXT) $(ROOTPERLMOD) +$(BUILDPERL64)install: $(ROOTPERLEXT64) $(ROOTPERLMOD64) clean clobber: - $(RM) -r $(MACH) + $(RM) -r $(MACH) $(MACH64) diff --git a/usr/src/lib/Makefile.lib b/usr/src/lib/Makefile.lib index c6521af70e..1471e292c9 100644 --- a/usr/src/lib/Makefile.lib +++ b/usr/src/lib/Makefile.lib @@ -21,6 +21,7 @@ # Copyright 2019 OmniOS Community Edition (OmniOSce) Association. # Copyright 2015 Gary Mills # Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com> +# Copyright 2016 RackTop Systems. # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. # Copyright 2019, Joyent, Inc. # @@ -146,8 +147,12 @@ SRCS= $(OBJECTS:%.o=$(SRCDIR)/%.c) BUILD.AR= $(AR) $(ARFLAGS) $@ $(AROBJS) BUILD.SO= $(CC) $(CFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) \ $(PICS) $(EXTPICS) $(LDLIBS) +BUILD64.SO= $(CC64) $(CFLAGS64) -o $@ $(GSHARED) $(DYNFLAGS) \ + $(PICS) $(EXTPICS) -L $(ROOTLIBDIR64) $(LDLIBS) BUILDCCC.SO= $(CCC) $(CCFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) \ $(PICS) $(EXTPICS) $(LDLIBS) +BUILDCCC64.SO= $(CCC64) $(CCFLAGS64) -o $@ $(GSHARED) $(DYNFLAGS) \ + $(PICS) $(EXTPICS) $(LDLIBS) $(CCNEEDED64) # default dynamic library symlink INS.liblink= -$(RM) $@; $(SYMLINK) $(LIBLINKPATH)$(LIBLINKS)$(VERS) $@ diff --git a/usr/src/pkg/Makefile b/usr/src/pkg/Makefile index 3ac8594165..6a627b4e12 100644 --- a/usr/src/pkg/Makefile +++ b/usr/src/pkg/Makefile @@ -23,6 +23,7 @@ # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. # Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com> +# Copyright 2016 RackTop Systems. # Copyright 2018 OmniOS Community Edition (OmniOSce) Association. # @@ -187,8 +188,11 @@ PKGMOG_DEFINES= \ PKGVERS_BRANCH=$(PKGVERS_BRANCH) \ PKGVERS=$(PKGVERS) \ PERL_ARCH=$(PERL_ARCH) \ + PERL_ARCH64=$(PERL_ARCH64) \ PERL_VERSION=$(PERL_VERSION) \ PERL_PKGVERS=$(PERL_PKGVERS) \ + BUILDPERL32=$(BUILDPERL32) \ + BUILDPERL64=$(BUILDPERL64) \ PYTHON_VERSION=$(PYTHON_VERSION) \ PYTHON3_VERSION=$(PYTHON3_VERSION) \ PYTHON_PKGVERS=$(PYTHON_PKGVERS) \ diff --git a/usr/src/pkg/manifests/runtime-perl-module-sun-solaris.mf b/usr/src/pkg/manifests/runtime-perl-module-sun-solaris.mf index f444a4548a..5e68399439 100644 --- a/usr/src/pkg/manifests/runtime-perl-module-sun-solaris.mf +++ b/usr/src/pkg/manifests/runtime-perl-module-sun-solaris.mf @@ -21,11 +21,11 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. -# Copyright (c) 2014 Racktop Systems. # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # -<transform file path=.*\.(pm|bs) -> default mode 0444> +<transform file path=.*\.pm -> default mode 0444> <transform file path=.*\.so -> default mode 0555> set name=pkg.fmri \ value=pkg:/runtime/perl$(PERL_PKGVERS)/module/sun-solaris@0.5.11,$(PKGVERS_BUILTON)-$(PKGVERS_BRANCH) @@ -37,41 +37,98 @@ dir path=usr group=sys dir path=usr/perl5 dir path=usr/perl5/$(PERL_VERSION) dir path=usr/perl5/$(PERL_VERSION)/lib -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH) -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Intrs -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Kstat -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Lgrp -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Project -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Task -dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Utils +$(BUILDPERL32)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH) +$(BUILDPERL32)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun +$(BUILDPERL32)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris +$(BUILDPERL32)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto +$(BUILDPERL32)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Intrs +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Kstat +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Lgrp +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Project +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Task +$(BUILDPERL32)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Utils +$(BUILDPERL64)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64) +$(BUILDPERL64)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris +$(BUILDPERL64)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto +$(BUILDPERL64)dir path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Intrs +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Kstat +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Lgrp +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Project +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Task +$(BUILDPERL64)dir \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Utils dir path=usr/perl5/$(PERL_VERSION)/lib/Sun dir path=usr/perl5/$(PERL_VERSION)/lib/Sun/Solaris dir path=usr/perl5/$(PERL_VERSION)/lib/Sun/Solaris/BSM dir path=usr/share/man dir path=usr/share/man/man3perl -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Intrs.pm -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Kstat.pm -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Lgrp.pm -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Project.pm -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Task.pm -file path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Utils.pm -file \ +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Intrs.pm +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Kstat.pm +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Lgrp.pm +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Project.pm +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Task.pm +$(BUILDPERL32)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/Sun/Solaris/Utils.pm +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Intrs/Intrs.so -file \ +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Kstat/Kstat.so -file \ +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Lgrp/Lgrp.so -file \ +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Project/Project.so -file \ +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Task/Task.so -file \ +$(BUILDPERL32)file \ path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH)/auto/Sun/Solaris/Utils/Utils.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Intrs.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Kstat.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Lgrp.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Project.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Task.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/Sun/Solaris/Utils.pm +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Intrs/Intrs.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Kstat/Kstat.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Lgrp/Lgrp.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Project/Project.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Task/Task.so +$(BUILDPERL64)file \ + path=usr/perl5/$(PERL_VERSION)/lib/$(PERL_ARCH64)/auto/Sun/Solaris/Utils/Utils.so file path=usr/perl5/$(PERL_VERSION)/lib/Sun/Solaris/BSM/_BSMparse.pm file path=usr/perl5/$(PERL_VERSION)/lib/Sun/Solaris/Pg.pm file path=usr/share/man/man3perl/Kstat.3perl @@ -81,3 +138,4 @@ file path=usr/share/man/man3perl/Task.3perl license cr_Sun license=cr_Sun license usr/src/cmd/perl/THIRDPARTYLICENSE \ license=usr/src/cmd/perl/THIRDPARTYLICENSE +depend fmri=runtime/perl$(PERL_PKGVERS) type=require diff --git a/usr/src/pkg/manifests/system-extended-system-utilities.mf b/usr/src/pkg/manifests/system-extended-system-utilities.mf index 2e955470c4..0a8502a491 100644 --- a/usr/src/pkg/manifests/system-extended-system-utilities.mf +++ b/usr/src/pkg/manifests/system-extended-system-utilities.mf @@ -22,6 +22,7 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. # Copyright 2012 Nexenta Systems, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # set name=pkg.fmri value=pkg:/system/extended-system-utilities@$(PKGVERS) @@ -292,3 +293,4 @@ link path=usr/share/man/man1/unexpand.1 target=expand.1 link path=usr/share/man/man1/unpack.1 target=pack.1 link path=usr/share/man/man1/zcat.1 target=compress.1 depend fmri=runtime/perl$(PERL_PKGVERS) type=require +depend fmri=runtime/perl$(PERL_PKGVERS)/module/sun-solaris type=require diff --git a/usr/src/tools/env/illumos.sh b/usr/src/tools/env/illumos.sh index 3753a0be3e..03c524fdeb 100644 --- a/usr/src/tools/env/illumos.sh +++ b/usr/src/tools/env/illumos.sh @@ -22,6 +22,7 @@ # Copyright 2015 Nexenta Systems, Inc. All rights reserved. # Copyright 2012 Joshua M. Clulow <josh@sysmgr.org> # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. +# Copyright 2016 RackTop Systems. # Copyright 2019 OmniOS Community Edition (OmniOSce) Association. # Copyright 2019, Joyent, Inc. # @@ -95,9 +96,14 @@ export ENABLE_SMB_PRINTING= # contains your new defaults OR your .env file sets them. # These are how you would override for building on OmniOS r151028, for example. #export PERL_VERSION=5.28 -#export PERL_ARCH=i86pc-solaris-thread-multi-64int +#export PERL_VARIANT=-thread-multi #export PERL_PKGVERS= +# To disable building of the 32-bit or 64-bit perl modules (or both), +# uncomment these lines: +#export BUILDPERL32='#' +#export BUILDPERL64='#' + # If your distro uses certain versions of Python, make sure either # Makefile.master contains your new defaults OR your .env file sets them. #export PYTHON_VERSION=2.7 |