]> git.proxmox.com Git - mirror_frr.git/commitdiff
build: non-recursive solaris
authorDavid Lamparter <equinox@diac24.net>
Sat, 18 Aug 2018 02:05:55 +0000 (04:05 +0200)
committerDavid Lamparter <equinox@opensourcerouting.org>
Thu, 30 Aug 2018 06:06:44 +0000 (08:06 +0200)
Signed-off-by: David Lamparter <equinox@diac24.net>
Makefile.am
configure.ac
solaris/.gitignore
solaris/Makefile.am [deleted file]
solaris/Makefile.in [new file with mode: 0644]
solaris/subdir.am [new file with mode: 0644]

index 3168f9d54877a51be502e32ed707bf42c657b8b4..ec186b3fc1e92cb62624d6fdd1315ea0dcf9b0fc 100644 (file)
@@ -48,6 +48,7 @@ include qpb/subdir.am
 include fpm/subdir.am
 include tools/subdir.am
 include debianpkg/subdir.am
+include solaris/subdir.am
 
 include ripd/subdir.am
 include ripngd/subdir.am
@@ -68,11 +69,11 @@ include bfdd/subdir.am
 SUBDIRS = . @LIBRFP@ @RFPTEST@ \
         @BGPD@ \
         @VTYSH@ \
-         @SOLARIS@ tests
+         tests
 
 DIST_SUBDIRS = . bgpd \
          vtysh tests \
-         solaris bgpd/rfp-example/librfp \
+         bgpd/rfp-example/librfp \
          bgpd/rfp-example/rfptest \
          # end
 
index 09142c67903277657be9e07666841df36b44bdc9..9a505bf73c7fe104b891c8e41cce92cd6e493193 100755 (executable)
@@ -1988,6 +1988,7 @@ AC_CONFIG_FILES([Makefile
          bgpd/rfp-example/rfptest/Makefile
          bgpd/rfp-example/librfp/Makefile
          redhat/frr.spec
+         solaris/Makefile
          debianpkg/changelog
          alpine/APKBUILD
          snapcraft/snapcraft.yaml
@@ -2003,8 +2004,6 @@ if test "${enable_bgp_vnc}" != "no"; then
    fi
 fi
 
-AC_CONFIG_FILES([solaris/Makefile])
-
 AC_CONFIG_FILES([vtysh/extract.pl],[chmod +x vtysh/extract.pl])
 
 AC_CONFIG_COMMANDS([lib/route_types.h], [
index a2c7946e71ef2edef4e6d597126417d55bc442cb..a249b6199618d22e4cdbe3a7b5025b451d7f8b82 100644 (file)
@@ -1,5 +1,5 @@
 Makefile
-Makefile.in
+!Makefile.in
 ?.manifest
 *.xml
 pkginfo.*.full
@@ -19,4 +19,4 @@ frr.init
 *.pkg.gz
 *~
 *.loT
-*.a
\ No newline at end of file
+*.a
diff --git a/solaris/Makefile.am b/solaris/Makefile.am
deleted file mode 100644 (file)
index 1659082..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-# Solaris packages automake file
-
-# XXX This file uses GNU make extensions.
-
-.PHONY: packages
-
-# the names of the various subpackages, and some convenient 
-# derived variables.
-pkg_names = daemons dev doc libs smf
-pkg_frr_daemons = zebra bgpd ospfd ospf6d ripd ripngd
-pkg_name_rev = @PACKAGE_VERSION@-@CONFDATE@-@host_os@-@host_cpu@
-pkg_depends = $(pkg_names:%=depend.%)
-pkg_packages = $(pkg_names:%=@PACKAGE_TARNAME@-%-$(pkg_name_rev).pkg)
-pkg_pkginfos = $(pkg_names:%=pkginfo.%.full)
-pkg_prototypes = $(pkg_names:%=prototype.%)
-pkg_manifests = frr.xml
-
-# pkgmk variable substitutions wont grok ${variable} in prototype
-# file, so we cant let autoconf generate the file sadly
-# wish automake would just provide a template for this
-edit = $(SED) \
-       -e 's,@prefix\@,$(prefix),g' \
-       -e 's,@exec_prefix,$(exec_prefix),g' \
-       -e 's,@bindir\@,$(bindir),g' \
-       -e 's,@sbindir\@,$(sbindir),g' \
-       -e 's,@libexecdir\@,$(libexecdir),g' \
-       -e 's,@datadir\@,$(datadir),g' \
-       -e 's,@sysconfdir\@,$(sysconfdir),g' \
-       -e 's,@sharedstatedir\@,$(sharedstatedir),g' \
-       -e 's,@localstatedir\@,$(localstatedir),g' \
-       -e 's,@libdir\@,$(libdir),g' \
-       -e 's,@includedir\@,$(includedir),g' \
-       -e 's,@infodir\@,$(infodir),g' \
-       -e 's,@mandir\@,$(mandir),g' \
-       -e 's,@enable_user\@,$(enable_user),g' \
-       -e 's,@enable_group\@,$(enable_group),g' \
-       -e 's,@enable_vty_group\@,$(enable_vty_group),g' \
-       -e 's,@frr_statedir\@,$(frr_statedir),g' \
-       -e 's,[@]PACKAGE_NAME[@],@PACKAGE_NAME@,g' \
-       -e 's,[@]PACKAGE_TARNAME[@],@PACKAGE_TARNAME@,g' \
-       -e 's,[@]PACKAGE_VERSION[@],@PACKAGE_VERSION@,g' \
-       -e 's,[@]PACKAGE_BUGREPORT[@],@PACKAGE_BUGREPORT@,g' \
-       -e 's,[@]CONFDATE[@],@CONFDATE@,g' \
-       -e 's,[@]host_cpu[@],$(host_cpu),g' \
-       -e 's,[@]host_os[@],$(host_os),g'
-
-# common options for pkgmk
-pkg_make_vars = exec_prefix=@exec_prefix@ prefix=@prefix@ \
-       builddir=@builddir@ srcdir=@srcdir@ \
-       top_builddir=@top_builddir@ top_srcdir=@top_srcdir@ \
-       abs_builddir=@abs_builddir@ abs_srcdir=@abs_srcdir@ \
-       abs_top_builddir=@abs_top_builddir@ abs_top_srcdir=@abs_top_srcdir@
-
-# pkgmk: write the package to spool in build dir, to avoid root dependencies
-pkg_make = pkgmk -o -d @abs_builddir@ \
-       -f $< DESTDIR="$(DESTDIR)/" $(pkg_make_vars)
-
-# pkgtrans: write a pkg file stream, shame we cant pipe directly to it from
-# pkgmk..
-pkg_trans = pkgtrans -s @abs_builddir@ "@abs_builddir@/$@"
-
-# pkgmk can only cope with a single pkginfo, cant 'stack' various 
-# pkginfo template files and a package specific pkginfo file in the prototype
-# Create the package specific template here, and create the full pkginfo
-# by cating this and the common pkginfo.tmpl together.
-pkginfo.tmpl: $(srcdir)/pkginfo.tmpl.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-
-pkginfo.%.tmpl: $(srcdir)/pkginfo.%.tmpl.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-
-pkginfo.%.full: pkginfo.%.tmpl pkginfo.tmpl Makefile
-       cat pkginfo.tmpl pkginfo.$*.tmpl > $@
-
-# use 'edit' above to transform prototype.in to pkgmk acceptable prototype
-prototype.%: $(srcdir)/prototype.%.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-
-# use edit to construct the SMF manifest files
-%.xml: $(srcdir)/%.xml.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-# use edit to construct the depend files
-depend.%: $(srcdir)/depend.%.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-
-# method file (bit like init script)
-frr.init: $(srcdir)/frr.init.in Makefile
-       rm -f $@
-       $(edit) $< > $@
-
-# construct the pkg
-@PACKAGE_TARNAME@-%-$(pkg_name_rev).pkg: prototype.% \
-               depend.% frr.init pkginfo.%.full
-       ($(pkg_make) && \
-       $(pkg_trans) "FRR$*")
-
-%.pkg.gz : %.pkg
-       (gzip -c $< > $@)
-
-# pkginfo.package and prototype.package are all built sources
-#BUILT_SOURCES = pkginfo.daemons pkginfo.dev pkginfo.doc pkginfo.libs \
-#      prototype.daemons prototype.dev prototype.doc prototype.libs
-BUILT_SOURCES = $(pkg_pkginfos) pkginfo.tmpl $(pkg_prototypes) \
-       $(pkg_manifests) $(pkg_depends) frr.init
-
-CLEANFILES = $(BUILT_SOURCES) $(pkg_packages)
-
-EXTRA_DIST = $(pkg_manifests:%=%.in) $(pkg_prototypes:%=%.in) \
-       $(pkg_names:%=pkginfo.%.tmpl.in) $(srcdir)/pkginfo.tmpl.in \
-       $(pkg_depends:%=%.in) frr.init.in README.txt
-
-pkg-root-install:
-       (cd $(top_builddir) && \
-        $(MAKE) DESTDIR=$(abs_builddir)/frr-root install)
-
-packages: $(pkg_packages)
-
-#nodist_pkgdata_DATA = $(pkg_packages)
diff --git a/solaris/Makefile.in b/solaris/Makefile.in
new file mode 100644 (file)
index 0000000..df9122a
--- /dev/null
@@ -0,0 +1,155 @@
+# Solaris packages automake file
+
+# XXX This file uses GNU make extensions.
+
+.PHONY: packages all all-files
+
+all: all-files
+
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datarootdir = @datarootdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+includedir = @includedir@
+infodir = @infodir@
+mandir = @mandir@
+frr_statedir = @frr_statedir@
+
+builddir = @builddir@
+srcdir = @srcdir@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+
+enable_user = @enable_user@
+enable_group = @enable_group@
+enable_vty_group = @enable_vty_group@
+
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+CONFDATE = @CONFDATE@
+
+host_cpu = @host_cpu@
+host_os = @host_os@
+
+SED = @SED@
+MAKE = @MAKE@
+
+# the names of the various subpackages, and some convenient 
+# derived variables.
+pkg_names = daemons dev doc libs smf
+pkg_frr_daemons = zebra bgpd ospfd ospf6d ripd ripngd
+pkg_name_rev = $(PACKAGE_VERSION)-$(CONFDATE)-$(host_os)-$(host_cpu)
+pkg_depends = $(pkg_names:%=depend.%)
+pkg_packages = $(pkg_names:%=@PACKAGE_TARNAME@-%-$(pkg_name_rev).pkg)
+pkg_pkginfos = $(pkg_names:%=pkginfo.%.full)
+pkg_prototypes = $(pkg_names:%=prototype.%)
+pkg_manifests = frr.xml
+
+# pkgmk variable substitutions wont grok ${variable} in prototype
+# file, so we cant let autoconf generate the file sadly
+# wish automake would just provide a template for this
+edit = $(SED) \
+       -e 's,@prefix\@,$(prefix),g' \
+       -e 's,@exec_prefix,$(exec_prefix),g' \
+       -e 's,@bindir\@,$(bindir),g' \
+       -e 's,@sbindir\@,$(sbindir),g' \
+       -e 's,@libexecdir\@,$(libexecdir),g' \
+       -e 's,@datadir\@,$(datadir),g' \
+       -e 's,@sysconfdir\@,$(sysconfdir),g' \
+       -e 's,@sharedstatedir\@,$(sharedstatedir),g' \
+       -e 's,@localstatedir\@,$(localstatedir),g' \
+       -e 's,@libdir\@,$(libdir),g' \
+       -e 's,@includedir\@,$(includedir),g' \
+       -e 's,@infodir\@,$(infodir),g' \
+       -e 's,@mandir\@,$(mandir),g' \
+       -e 's,@enable_user\@,$(enable_user),g' \
+       -e 's,@enable_group\@,$(enable_group),g' \
+       -e 's,@enable_vty_group\@,$(enable_vty_group),g' \
+       -e 's,@frr_statedir\@,$(frr_statedir),g' \
+       -e 's,[@]PACKAGE_NAME[@],$(PACKAGE_NAME),g' \
+       -e 's,[@]PACKAGE_TARNAME[@],$(PACKAGE_TARNAME),g' \
+       -e 's,[@]PACKAGE_VERSION[@],$(PACKAGE_VERSION),g' \
+       -e 's,[@]PACKAGE_BUGREPORT[@],$(PACKAGE_BUGREPORT),g' \
+       -e 's,[@]CONFDATE[@],$(CONFDATE),g' \
+       -e 's,[@]host_cpu[@],$(host_cpu),g' \
+       -e 's,[@]host_os[@],$(host_os),g'
+
+# common options for pkgmk
+pkg_make_vars = exec_prefix=$(exec_prefix) prefix=$(prefix) \
+       builddir=$(builddir) srcdir=$(srcdir) \
+       top_builddir=$(top_builddir) top_srcdir=$(top_srcdir) \
+       abs_builddir=$(abs_builddir) abs_srcdir=$(abs_srcdir) \
+       abs_top_builddir=$(abs_top_builddir) abs_top_srcdir=$(abs_top_srcdir)
+
+# pkgmk: write the package to spool in build dir, to avoid root dependencies
+pkg_make = pkgmk -o -d $(abs_builddir) \
+       -f $< DESTDIR="$(DESTDIR)/" $(pkg_make_vars)
+
+# pkgtrans: write a pkg file stream, shame we cant pipe directly to it from
+# pkgmk..
+pkg_trans = pkgtrans -s $(abs_builddir) "$(abs_builddir)/$@"
+
+# pkgmk can only cope with a single pkginfo, cant 'stack' various 
+# pkginfo template files and a package specific pkginfo file in the prototype
+# Create the package specific template here, and create the full pkginfo
+# by cating this and the common pkginfo.tmpl together.
+pkginfo.tmpl: $(srcdir)/pkginfo.tmpl.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+
+pkginfo.%.tmpl: $(srcdir)/pkginfo.%.tmpl.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+
+pkginfo.%.full: pkginfo.%.tmpl pkginfo.tmpl Makefile
+       cat pkginfo.tmpl pkginfo.$*.tmpl > $@
+
+# use 'edit' above to transform prototype.in to pkgmk acceptable prototype
+prototype.%: $(srcdir)/prototype.%.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+
+# use edit to construct the SMF manifest files
+%.xml: $(srcdir)/%.xml.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+# use edit to construct the depend files
+depend.%: $(srcdir)/depend.%.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+
+# method file (bit like init script)
+frr.init: $(srcdir)/frr.init.in Makefile
+       rm -f $@
+       $(edit) $< > $@
+
+# construct the pkg
+$(PACKAGE_TARNAME)-%-$(pkg_name_rev).pkg: prototype.% \
+               depend.% frr.init pkginfo.%.full
+       ($(pkg_make) && \
+       $(pkg_trans) "FRR$*")
+
+%.pkg.gz : %.pkg
+       (gzip -c $< > $@)
+
+pkg-root-install:
+       (cd $(top_builddir) && \
+        $(MAKE) DESTDIR=$(abs_builddir)/frr-root install)
+
+packages: $(pkg_packages)
+
+all-files: $(pkg_pkginfos) pkginfo.tmpl $(pkg_prototypes) \
+       $(pkg_manifests) $(pkg_depends) frr.init
diff --git a/solaris/subdir.am b/solaris/subdir.am
new file mode 100644 (file)
index 0000000..1d19d56
--- /dev/null
@@ -0,0 +1,53 @@
+#
+# solaris
+#
+
+.PHONY: solaris/all
+if SOLARIS
+all: solaris/all
+solaris/all:
+       @make -s -C solaris all
+endif
+
+CLEANFILES += \
+       solaris/frr.xml \
+       solaris/frr.init \
+       solaris/pkginfo.tmpl \
+       solaris/prototype.daemons \
+       solaris/prototype.dev \
+       solaris/prototype.doc \
+       solaris/prototype.libs \
+       solaris/prototype.smf \
+       solaris/pkginfo.daemons.tmpl \
+       solaris/pkginfo.dev.tmpl \
+       solaris/pkginfo.doc.tmpl \
+       solaris/pkginfo.libs.tmpl \
+       solaris/pkginfo.smf.tmpl \
+       solaris/depend.daemons \
+       solaris/depend.dev \
+       solaris/depend.doc \
+       solaris/depend.libs \
+       solaris/depend.smf \
+       # end
+
+EXTRA_DIST += \
+       solaris/frr.xml.in \
+       solaris/frr.init.in \
+       solaris/pkginfo.tmpl.in \
+       solaris/prototype.daemons.in \
+       solaris/prototype.dev.in \
+       solaris/prototype.doc.in \
+       solaris/prototype.libs.in \
+       solaris/prototype.smf.in \
+       solaris/pkginfo.daemons.tmpl.in \
+       solaris/pkginfo.dev.tmpl.in \
+       solaris/pkginfo.doc.tmpl.in \
+       solaris/pkginfo.libs.tmpl.in \
+       solaris/pkginfo.smf.tmpl.in \
+       solaris/depend.daemons.in \
+       solaris/depend.dev.in \
+       solaris/depend.doc.in \
+       solaris/depend.libs.in \
+       solaris/depend.smf.in \
+       solaris/README.txt \
+       # end