Merge pull request #192 from firezone/186/omnibus

Move to omnibus build system
This commit is contained in:
Jamil
2021-08-12 21:46:45 -07:00
committed by GitHub
100 changed files with 16145 additions and 410 deletions

View File

@@ -4,7 +4,7 @@ set -ex
# PORT is set in Github Actions matrix
echo "Trying to load homepage"
curl -i -vvv -k https://$(hostname):${PORT}/
curl -i -vvv -k https://$(hostname):${PORT}/ || true
echo "Printing SSL debug info"
openssl s_client -connect $(hostname):${PORT} -servername $(hostname) -showcerts -prexit
openssl s_client -connect $(hostname):${PORT} -servername $(hostname) -showcerts -prexit || true

View File

@@ -1,15 +0,0 @@
#!/usr/bin/env bash
set -e
# Install Google Chrome -- Comes pre-installed in Github Actions VM
# curl -L https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
# sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
# sudo apt-get update
# sudo apt-get install google-chrome-stable
# Install ChromeDriver
stable_version=`curl -L https://chromedriver.storage.googleapis.com/LATEST_RELEASE`
curl -L -O https://chromedriver.storage.googleapis.com/${stable_version}/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
chmod +x chromedriver
sudo mv chromedriver /usr/local/bin/

View File

@@ -1,7 +0,0 @@
#!/usr/bin/env bash
set -e
mix deps.get --only test
cd apps/fz_http/assets
npm install
./node_modules/.bin/webpack --mode development

View File

@@ -1,11 +0,0 @@
#!/usr/bin/env bash
set -e
os_name='ubuntu~bionic'
curl -O https://packages.erlang-solutions.com/erlang/debian/pool/esl-erlang_24.0.2-1~${os_name}_${MATRIX_ARCH}.deb
curl -O https://packages.erlang-solutions.com/erlang/debian/pool/elixir_1.12.0-1~${os_name}_all.deb
gdebi --non-interactive *.deb
curl -sL https://deb.nodesource.com/setup_14.x | bash -
apt-get install -y -q gcc g++ make nodejs

View File

@@ -1,84 +1,63 @@
#!/bin/bash
set -ex
# CentOS 7 comes with GCC 4.8.5 which does not fully support C++14, so we need
# a newer toolchain.
sudo yum install -y centos-release-scl
sudo yum install -y devtoolset-9
source /opt/rh/devtoolset-9/enable
# Install prerequisites
sudo yum groupinstall -y 'Development Tools'
sudo yum install -y \
gcc-c++ \
zsh \
tree \
rsync \
autoconf \
automake \
procps \
openssl-devel \
ncurses-devel \
curl \
git \
findutils \
python3 \
unzip \
glibc-all-langpacks \
rpmdevtools \
rpmlint \
openssl \
net-tools \
systemd \
postgresql-server \
iptables
# Set locale
sudo bash -c 'echo "LANG=en_US.UTF-8" > /etc/locale.conf'
sudo localectl set-locale LANG=en_US.UTF-8
# Set up Postgres
sudo postgresql-setup initdb
# sudo bash -c 'cat <<EOT > /var/lib/pgsql/data/pg_hba.conf
# local all all peer
# host all all 127.0.0.1/32 md5
# host all all ::1/128 md5
# EOT
# '
sudo systemctl enable postgresql
sudo systemctl restart postgresql
# Install NodeJS 16
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
# Install WireGuard
sudo yum install -y epel-release elrepo-release
sudo yum install -y yum-plugin-elrepo
sudo yum install -y kmod-wireguard wireguard-tools
sudo yum install -y kmod-wireguard
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
# Install asdf ruby
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone.service
# systemctl status firezone.service
# journalctl -xeu firezone
sudo rpm -i pkg/firezone*.rpm

View File

@@ -4,26 +4,21 @@ set -ex
# Install prerequisites
sudo yum groupinstall -y 'Development Tools'
sudo yum install -y \
gcc-c++ \
zsh \
tree \
rsync \
autoconf \
automake \
procps \
openssl-devel \
ncurses-devel \
curl \
git \
findutils \
python3 \
unzip \
glibc-all-langpacks \
rpmdevtools \
rpmlint \
openssl \
net-tools \
systemd \
postgresql-server \
iptables
# Set locale
@@ -31,47 +26,34 @@ sudo bash -c 'echo "LANG=en_US.UTF-8" > /etc/locale.conf'
sudo localectl set-locale LANG=en_US.UTF-8
# Set up Postgres
sudo postgresql-setup --initdb --unit postgresql
# Fix postgres login
# sudo cat <<EOT > /var/lib/pgsql/data/pg_hba.conf
# local all all peer
# host all all 127.0.0.1/32 md5
# host all all ::1/128 md5
# EOT
sudo systemctl enable postgresql
sudo systemctl restart postgresql
# Install WireGuard
sudo yum install -y epel-release elrepo-release
sudo yum install -y kmod-wireguard wireguard-tools
sudo yum install -y kmod-wireguard
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
# Install NodeJS 16
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
# Install asdf ruby
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone.service
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo rpm -i pkg/firezone*.rpm

View File

@@ -17,6 +17,7 @@ sudo apt-get install -y -q \
git \
dpkg-dev \
libssl-dev \
python3 \
automake \
gnupg \
curl \
@@ -28,7 +29,6 @@ sudo apt-get install -y -q \
net-tools \
iptables \
openssl \
postgresql \
systemd
# Set locale
@@ -38,46 +38,41 @@ export LANG=en_US.UTF-8
export LANGUAGE=en_US:en
export LC_ALL=en_US.UTF-8
# Set up Postgres
sudo systemctl enable postgresql
sudo systemctl start postgresql
# Add Backports repo
sudo bash -c 'echo "deb http://deb.debian.org/debian buster-backports main" > /etc/apt/sources.list.d/backports.list'
sudo apt-get -q update
# Install NodeJS 16
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
# Install WireGuard
sudo apt-get install -y -q \
wireguard \
wireguard-tools
sudo apt-get install -y -q wireguard-dkms
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone || true
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo dpkg -i pkg/firezone*.deb

View File

@@ -16,6 +16,7 @@ sudo yum install -y \
curl \
git \
findutils \
python3 \
unzip \
glibc-all-langpacks \
rpmdevtools \
@@ -23,52 +24,35 @@ sudo yum install -y \
openssl \
net-tools \
systemd \
postgresql-server \
iptables \
wireguard-tools
iptables
# Set locale
sudo bash -c 'echo "LANG=en_US.UTF-8" > /etc/locale.conf'
sudo localectl set-locale LANG=en_US.UTF-8
# Set up Postgres
sudo postgresql-setup --initdb --unit postgresql
# Fix postgres login
# sudo cat <<EOT > /var/lib/pgsql/data/pg_hba.conf
# local all all peer
# host all all 127.0.0.1/32 md5
# host all all ::1/128 md5
# EOT
sudo systemctl enable postgresql
sudo systemctl restart postgresql
# Install NodeJS 16
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone.service
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo rpm -i pkg/firezone*.rpm

View File

@@ -16,6 +16,7 @@ sudo yum install -y \
curl \
git \
findutils \
python3 \
unzip \
glibc-all-langpacks \
rpmdevtools \
@@ -23,51 +24,35 @@ sudo yum install -y \
openssl \
net-tools \
systemd \
postgresql-server \
iptables \
wireguard-tools
iptables
# Set locale
sudo bash -c 'echo "LANG=en_US.UTF-8" > /etc/locale.conf'
sudo localectl set-locale LANG=en_US.UTF-8
# Set up Postgres
sudo postgresql-setup --initdb --unit postgresql
# Fix postgres login
# sudo cat <<EOT > /var/lib/pgsql/data/pg_hba.conf
# local all all peer
# host all all 127.0.0.1/32 md5
# host all all ::1/128 md5
# EOT
sudo systemctl enable postgresql
sudo systemctl restart postgresql
# Install NodeJS 16
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone.service
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo rpm -i pkg/firezone*.rpm

View File

@@ -17,6 +17,7 @@ sudo apt-get install -y -q \
git \
dpkg-dev \
libssl-dev \
python3 \
automake \
gnupg \
curl \
@@ -28,10 +29,8 @@ sudo apt-get install -y -q \
net-tools \
iptables \
openssl \
postgresql \
systemd \
wireguard \
wireguard-tools
wireguard-dkms
# Set locale
sudo sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen
@@ -40,37 +39,32 @@ export LANG=en_US.UTF-8
export LANGUAGE=en_US:en
export LC_ALL=en_US.UTF-8
# Set up Postgres
sudo systemctl enable postgresql
sudo systemctl start postgresql
# Install NodeJS 16
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone || true
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo dpkg -i pkg/firezone*.deb

View File

@@ -17,6 +17,7 @@ sudo apt-get install -y -q \
git \
dpkg-dev \
libssl-dev \
python3 \
automake \
gnupg \
curl \
@@ -28,10 +29,8 @@ sudo apt-get install -y -q \
net-tools \
iptables \
openssl \
postgresql \
systemd \
wireguard \
wireguard-tools
wireguard-dkms
# Set locale
sudo sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen
@@ -40,37 +39,31 @@ export LANG=en_US.UTF-8
export LANGUAGE=en_US:en
export LC_ALL=en_US.UTF-8
# Set up Postgres
sudo systemctl enable postgresql
sudo systemctl start postgresql
# Install NodeJS 16
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
# Install asdf
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
# Install asdf ruby
if [ ! -d $HOME/.asdf ]; then
git clone --depth 1 https://github.com/asdf-vm/asdf.git $HOME/.asdf
fi
grep -qxF '. $HOME/.asdf/asdf.sh' $HOME/.bashrc || echo '. $HOME/.asdf/asdf.sh' >> $HOME/.bashrc
grep -qxF '. $HOME/.asdf/completions/asdf.bash' $HOME/.bashrc || echo '. $HOME/.asdf/completions/asdf.bash' >> $HOME/.bashrc
. $HOME/.asdf/asdf.sh
asdf plugin-add nodejs
asdf plugin-add erlang
asdf plugin-add elixir
asdf list ruby || asdf plugin-add ruby
cd /vagrant
asdf install
# Build release
export MIX_ENV=prod
mix local.hex --force
mix local.rebar --force
mix deps.get --only prod
mix deps.compile
npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error
npm run --prefix ./apps/fz_http/assets deploy
cd apps/fz_http && mix phx.digest && cd /vagrant
mix release
tar -zcf $PKG_FILE -C _build/prod/rel/ firezone
# Install omnibus
cd omnibus
gem install bundler
bundle install --binstubs
# file=(/tmp/firezone*.tar.gz)
# /tmp/install.sh /tmp/$file
# systemctl start firezone || true
# systemctl status firezone.service
# journalctl -xeu firezone
# Build omnibus package
sudo mkdir -p /opt/firezone
sudo chown -R ${USER} /opt/firezone
bin/omnibus build firezone
sudo dpkg -i pkg/firezone*.deb

View File

@@ -1,38 +0,0 @@
name: Build base images
on:
workflow_dispatch:
schedule:
- cron: '0 10 * * *' # 10am UTC
jobs:
build-and-push:
env:
MATRIX_IMAGE: ${{ matrix.image }}
MATRIX_PLATFORM: ${{ matrix.platform }}
strategy:
matrix:
image:
- centos:7
- centos:8
- fedora:33
- fedora:34
- debian:10
- ubuntu:18.04
- ubuntu:20.04
platform:
- linux/amd64
runs-on: ubuntu-20.04
steps:
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v2
- run: |
# Required due to a buildx bug.
# See https://github.com/docker/buildx/issues/495#issuecomment-761562905
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --name multiarch --driver docker-container --use
docker buildx inspect --bootstrap
.ci/build_base.sh

View File

@@ -12,17 +12,9 @@ jobs:
MIX_ENV: test
POSTGRES_HOST: localhost
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
postgres:
- postgres:9.6
- postgres:10
- postgres:11
- postgres:12
- postgres:13
services:
postgres:
image: ${{ matrix.postgres }}
image: postgres:13
ports:
- 5432:5432
env:
@@ -85,7 +77,7 @@ jobs:
os: ubuntu_18.04
- port: 8806
os: ubuntu_20.04
if: github.ref == 'refs/heads/master'
# if: github.ref == 'refs/heads/master'
steps:
- uses: actions/checkout@v2
- run: vagrant up ${{ matrix.os }}

View File

@@ -27,7 +27,9 @@ repos:
- id: check-yaml
- id: check-merge-conflict
- id: end-of-file-fixer
exclude: "^omnibus/config/patches/"
- id: trailing-whitespace
exclude: "^omnibus/config/patches/"
- id: check-merge-conflict
- id: no-commit-to-branch
args: [-b, master, -b, develop]

13
.rubocop.yml Normal file
View File

@@ -0,0 +1,13 @@
AllCops:
TargetRubyVersion: 2.7
Style/StringLiterals:
Enabled: true
EnforcedStyle: double_quotes
Style/StringLiteralsInInterpolation:
Enabled: true
EnforcedStyle: double_quotes
Layout/LineLength:
Max: 120

View File

@@ -1,3 +1,4 @@
nodejs 16.6.1
elixir 1.12.2-otp-24
erlang 24.0.5
ruby 2.7.3

104
Vagrantfile vendored
View File

@@ -1,122 +1,72 @@
# frozen_string_literal: true
# -*- mode: ruby -*-
# vi: set ft=ruby :
VERSION="0.2.0-1"
# This Vagrantfile is used for functional testing in the CI pipeline.
Vagrant.configure("2") do |config|
if ENV['CI']
# Github Actions MacOS hosts have 14 GB RAM and 3 CPU cores :-D
config.vm.provider "virtualbox" do |virtualbox|
virtualbox.cpus = 3
virtualbox.memory = 8_192
if ENV["CI"]
virtualbox.cpus = 3
virtualbox.memory = 8_192
end
end
end
config.vm.synced_folder '.', '/vagrant'
config.vm.synced_folder ".", "/vagrant", type: "rsync",
rsync__exclude: [".git/", "_build/", "**/deps/", "**/node_modules/"]
config.vm.define "centos_7" do |centos7|
centos7.vm.box = "generic/centos7"
centos7.vm.box_url = "http://vagrant.cloudfire.network/centos7.box"
centos7.vm.network "forwarded_port", guest: 8800, host: 8800
centos7.vm.provision "shell",
path: ".ci/provision/centos_7.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-centos_7.amd64.tar.gz" }
source_file = Dir["_build/firezone*centos_7*.tar.gz"].first
if source_file
centos7.vm.provision "file", source: source_file, destination: "/tmp/"
centos7.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
centos7.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8800)
# Install a newer kernel with proper nftables support
centos7.vm.provision "shell", reboot: true, inline: <<~SHELL
yum install -y elrepo-release
yum --enablerepo=elrepo-kernel install -y kernel-lt
SHELL
centos7.vm.provision "shell", path: ".ci/provision/centos_7.sh", privileged: false
end
config.vm.define "centos_8" do |centos8|
centos8.vm.box = "generic/centos8"
centos8.vm.box_url = "http://vagrant.cloudfire.network/centos8.box"
centos8.vm.network "forwarded_port", guest: 8800, host: 8801
centos8.vm.provision "shell",
path: ".ci/provision/centos_8.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-centos_8.amd64.tar.gz" }
source_file = Dir["_build/firezone*centos_8*.tar.gz"].first
if source_file
centos8.vm.provision "file", source: source_file, destination: "/tmp/"
centos8.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
centos8.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8801)
centos8.vm.provision "shell", path: ".ci/provision/centos_8.sh", privileged: false
end
config.vm.define "debian_10" do |debian10|
debian10.vm.box = "generic/debian10"
debian10.vm.box_url = "http://vagrant.cloudfire.network/debian10.box"
debian10.vm.network "forwarded_port", guest: 8800, host: 8802
debian10.vm.provision "shell",
path: ".ci/provision/debian_10.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-debian_10.amd64.tar.gz" }
source_file = Dir["_build/firezone*debian_10*.tar.gz"].first
if source_file
debian10.vm.provision "file", source: source_file, destination: "/tmp/"
debian10.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
debian10.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8802)
debian10.vm.provision "shell", path: ".ci/provision/debian_10.sh", privileged: false
end
config.vm.define "fedora_33" do |fedora33|
fedora33.vm.box = "generic/fedora33"
fedora33.vm.box_url = "http://vagrant.cloudfire.network/fedora33.box"
fedora33.vm.network "forwarded_port", guest: 8800, host: 8803
fedora33.vm.provision "shell",
path: ".ci/provision/fedora_33.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-fedora_33.amd64.tar.gz" }
source_file = Dir["_build/firezone*fedora_33*.tar.gz"].first
if source_file
fedora33.vm.provision "file", source: source_file, destination: "/tmp/"
fedora33.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
fedora33.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8803)
fedora33.vm.provision "shell", path: ".ci/provision/fedora_33.sh", privileged: false
end
config.vm.define "fedora_34" do |fedora34|
fedora34.vm.box = "generic/fedora34"
fedora34.vm.box_url = "http://vagrant.cloudfire.network/fedora34.box"
fedora34.vm.network "forwarded_port", guest: 8800, host: 8804
fedora34.vm.provision "shell",
path: ".ci/provision/fedora_34.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-fedora_34.amd64.tar.gz" }
source_file = Dir["_build/firezone*fedora_34*.tar.gz"].first
if source_file
fedora34.vm.provision "file", source: source_file, destination: "/tmp/"
fedora34.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
fedora34.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8804)
fedora34.vm.provision "shell", path: ".ci/provision/fedora_34.sh", privileged: false
end
config.vm.define "ubuntu_18.04" do |ubuntu1804|
ubuntu1804.vm.box = "generic/ubuntu1804"
ubuntu1804.vm.box_url = "http://vagrant.cloudfire.network/ubuntu1804.box"
ubuntu1804.vm.network "forwarded_port", guest: 8800, host: 8805
ubuntu1804.vm.provision "shell",
path: ".ci/provision/ubuntu_18.04.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-ubuntu_18.04.amd64.tar.gz" }
source_file = Dir["_build/firezone*ubuntu_18.04*.tar.gz"].first
if source_file
ubuntu1804.vm.provision "file", source: source_file, destination: "/tmp/"
ubuntu1804.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
ubuntu1804.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8805)
ubuntu1804.vm.provision "shell", path: ".ci/provision/ubuntu_18.04.sh", privileged: false
end
config.vm.define "ubuntu_20.04" do |ubuntu2004|
ubuntu2004.vm.box = "generic/ubuntu2004"
ubuntu2004.vm.box_url = "http://vagrant.cloudfire.network/ubuntu2004.box"
ubuntu2004.vm.network "forwarded_port", guest: 8800, host: 8806
ubuntu2004.vm.provision "shell",
path: ".ci/provision/ubuntu_20.04.sh",
privileged: false,
env: { PKG_FILE: "firezone-#{VERSION}-ubuntu_20.04.amd64.tar.gz" }
source_file = Dir["_build/firezone*ubuntu_20.04*.tar.gz"].first
if source_file
ubuntu2004.vm.provision "file", source: source_file, destination: "/tmp/"
ubuntu2004.vm.provision "file", source: "scripts/install.sh", destination: "/tmp/"
end
ubuntu2004.vm.network "forwarded_port", guest: 8800, host: ENV.fetch("PORT", 8806)
ubuntu2004.vm.provision "shell", path: ".ci/provision/ubuntu_20.04.sh", privileged: false
end
end

View File

@@ -0,0 +1,19 @@
--- pkg-config-0.28.orig/glib/glib/libcharset/config.charset Wed May 13 18:21:29 2015
+++ pkg-config-0.28/glib/glib/libcharset/config.charset Wed May 13 18:21:54 2015
@@ -398,6 +398,16 @@
echo "BIG5 BIG5"
echo "SJIS SHIFT_JIS"
;;
+ openbsd*)
+ echo "646 ASCII"
+ echo "ISO8859-1 ISO-8859-1"
+ echo "ISO8859-2 ISO-8859-2"
+ echo "ISO8859-4 ISO-8859-4"
+ echo "ISO8859-5 ISO-8859-5"
+ echo "ISO8859-7 ISO-8859-7"
+ echo "ISO8859-13 ISO-8859-13"
+ echo "ISO8859-15 ISO-8859-15"
+ ;;
darwin[56]*)
# Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore
# localcharset.c falls back to using the full locale name

11
omnibus/.gitignore vendored Normal file
View File

@@ -0,0 +1,11 @@
*.gem
.bundle
.kitchen/
.kitchen.local.yml
vendor/bundle
pkg/*
.vagrant
bin/*
files/**/cache/
vendor/cookbooks
local/

41
omnibus/.kitchen.yml Normal file
View File

@@ -0,0 +1,41 @@
driver:
name: vagrant
forward_agent: yes
customize:
cpus: 2
memory: 2048
synced_folders:
- ['.', '/home/vagrant/firezone']
provisioner:
name: chef_zero
platforms:
- name: centos-6
run_list: yum-epel::default
- name: centos-7
run_list: yum-epel::default
- name: debian-8
run_list: apt::default
- name: debian-9
run_list: apt::default
- name: freebsd-10
run_list: freebsd::portsnap
- name: freebsd-11
run_list: freebsd::portsnap
- name: ubuntu-14.04
run_list: apt::default
- name: ubuntu-16.04
run_list: apt::default
- name: ubuntu-18.04
run_list: apt::default
suites:
- name: default
run_list: omnibus::default
attributes:
omnibus:
build_user: vagrant
build_user_group: vagrant
build_user_password: vagrant
install_dir: /opt/firezone

12
omnibus/Berksfile Normal file
View File

@@ -0,0 +1,12 @@
source 'https://supermarket.chef.io'
cookbook 'omnibus'
# Uncomment to use the latest version of the Omnibus cookbook from GitHub
# cookbook 'omnibus', github: 'chef-cookbooks/omnibus'
group :integration do
cookbook 'apt', '~> 2.8'
cookbook 'freebsd', '~> 0.3'
cookbook 'yum-epel', '~> 0.6'
end

25
omnibus/Gemfile Normal file
View File

@@ -0,0 +1,25 @@
# frozen_string_literal: true
source "https://rubygems.org"
# Install omnibus
gem "omnibus", "~> 8.1"
# Use Chef"s software definitions. It is recommended that you write your own
# software definitions, but you can clone/fork Chef"s to get you started.
# gem "omnibus-software", github: "chef/omnibus-software"
# This development group is installed by default when you run `bundle install`,
# but if you are using Omnibus in a CI-based infrastructure, you do not need
# the Test Kitchen-based build lab. You can skip these unnecessary dependencies
# by running `bundle install --without development` to speed up build times.
group :development do
# Use Berkshelf for resolving cookbook dependencies
gem "berkshelf"
gem "rubocop"
# Use Test Kitchen with Vagrant for converging the build environment
gem "test-kitchen"
gem "kitchen-vagrant"
end

389
omnibus/Gemfile.lock Normal file
View File

@@ -0,0 +1,389 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
ast (2.4.2)
awesome_print (1.9.2)
aws-eventstream (1.1.1)
aws-partitions (1.484.0)
aws-sdk-core (3.119.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.239.0)
aws-sigv4 (~> 1.1)
jmespath (~> 1.0)
aws-sdk-kms (1.46.0)
aws-sdk-core (~> 3, >= 3.119.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.98.0)
aws-sdk-core (~> 3, >= 3.119.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.1)
aws-sigv4 (1.2.4)
aws-eventstream (~> 1, >= 1.0.2)
bcrypt_pbkdf (1.1.0)
berkshelf (7.2.2)
chef (>= 15.7.32)
chef-config
cleanroom (~> 1.0)
concurrent-ruby (~> 1.0)
minitar (>= 0.6)
mixlib-archive (>= 1.1.4, < 2.0)
mixlib-config (>= 2.2.5)
mixlib-shellout (>= 2.0, < 4.0)
octokit (~> 4.0)
retryable (>= 2.0, < 4.0)
solve (~> 4.0)
thor (>= 0.20)
builder (3.2.4)
chef (16.14.1)
addressable
bcrypt_pbkdf (~> 1.1)
bundler (>= 1.10)
chef-config (= 16.14.1)
chef-utils (= 16.14.1)
chef-vault
chef-zero (>= 14.0.11)
diff-lcs (>= 1.2.4, < 1.4.0)
ed25519 (~> 1.2)
erubis (~> 2.7)
ffi (>= 1.9.25)
ffi-libarchive (~> 1.0, >= 1.0.3)
ffi-yajl (~> 2.2)
highline (>= 1.6.9, < 3)
iniparse (~> 1.4)
inspec-core (~> 4.23)
license-acceptance (>= 1.0.5, < 3)
mixlib-archive (>= 0.4, < 2.0)
mixlib-authentication (>= 2.1, < 4)
mixlib-cli (>= 2.1.1, < 3.0)
mixlib-log (>= 2.0.3, < 4.0)
mixlib-shellout (>= 3.1.1, < 4.0)
net-sftp (>= 2.1.2, < 4.0)
net-ssh (>= 5.1, < 7)
net-ssh-multi (~> 1.2, >= 1.2.1)
ohai (~> 16.0)
pastel
plist (~> 3.2)
proxifier (~> 1.0)
syslog-logger (~> 1.6)
train-core (~> 3.2, >= 3.2.28)
train-winrm (>= 0.2.5)
tty-prompt (~> 0.21)
tty-screen (~> 0.6)
tty-table (~> 0.11)
uuidtools (>= 2.1.5, < 3.0)
chef-cleanroom (1.0.2)
chef-config (16.14.1)
addressable
chef-utils (= 16.14.1)
fuzzyurl
mixlib-config (>= 2.2.12, < 4.0)
mixlib-shellout (>= 2.0, < 4.0)
tomlrb (~> 1.2)
chef-telemetry (1.1.1)
chef-config
concurrent-ruby (~> 1.0)
chef-utils (16.14.1)
chef-vault (4.1.0)
chef-zero (15.0.7)
ffi-yajl (~> 2.2)
hashie (>= 2.0, < 5.0)
mixlib-log (>= 2.0, < 4.0)
rack (~> 2.0, >= 2.0.6)
uuidtools (~> 2.1)
webrick
citrus (3.0.2)
cleanroom (1.0.0)
coderay (1.1.3)
concurrent-ruby (1.1.9)
contracts (0.16.1)
diff-lcs (1.3)
ed25519 (1.2.4)
erubi (1.10.0)
erubis (2.7.0)
faraday (1.4.3)
faraday-em_http (~> 1.0)
faraday-em_synchrony (~> 1.0)
faraday-excon (~> 1.1)
faraday-net_http (~> 1.0)
faraday-net_http_persistent (~> 1.1)
multipart-post (>= 1.2, < 3)
ruby2_keywords (>= 0.0.4)
faraday-em_http (1.0.0)
faraday-em_synchrony (1.0.0)
faraday-excon (1.1.0)
faraday-net_http (1.0.1)
faraday-net_http_persistent (1.2.0)
faraday_middleware (1.1.0)
faraday (~> 1.0)
ffi (1.15.3)
ffi-libarchive (1.0.17)
ffi (~> 1.0)
ffi-yajl (2.4.0)
libyajl2 (>= 1.2)
fuzzyurl (0.9.0)
gssapi (1.3.1)
ffi (>= 1.0.1)
gyoku (1.3.1)
builder (>= 2.1.2)
hashie (4.1.0)
highline (2.0.3)
httpclient (2.8.3)
iniparse (1.5.0)
inspec-core (4.38.9)
addressable (~> 2.4)
chef-telemetry (~> 1.0, >= 1.0.8)
faraday (>= 0.9.0, < 1.5)
faraday_middleware (~> 1.0)
hashie (>= 3.4, < 5.0)
license-acceptance (>= 0.2.13, < 3.0)
method_source (>= 0.8, < 2.0)
mixlib-log (~> 3.0)
multipart-post (~> 2.0)
parallel (~> 1.9)
parslet (>= 1.5, < 2.0)
pry (~> 0.13)
rspec (>= 3.9, < 3.11)
rspec-its (~> 1.2)
rubyzip (>= 1.2.2, < 3.0)
semverse (~> 3.0)
sslshake (~> 1.2)
thor (>= 0.20, < 2.0)
tomlrb (>= 1.2, < 2.1)
train-core (~> 3.0)
tty-prompt (~> 0.17)
tty-table (~> 0.10)
iostruct (0.0.4)
ipaddress (0.8.3)
jmespath (1.4.0)
json (2.5.1)
kitchen-vagrant (1.9.0)
test-kitchen (>= 1.4, < 4)
libyajl2 (2.1.0)
license-acceptance (2.1.13)
pastel (~> 0.7)
tomlrb (>= 1.2, < 3.0)
tty-box (~> 0.6)
tty-prompt (~> 0.20)
license_scout (1.2.13)
ffi-yajl (~> 2.2)
mixlib-shellout (>= 2.2, < 4.0)
toml-rb (>= 1, < 3)
little-plugger (1.1.4)
logging (2.3.0)
little-plugger (~> 1.1)
multi_json (~> 1.14)
method_source (1.0.0)
minitar (0.9)
mixlib-archive (1.1.7)
mixlib-log
mixlib-authentication (3.0.10)
mixlib-cli (2.1.8)
mixlib-config (3.0.9)
tomlrb
mixlib-install (3.12.11)
mixlib-shellout
mixlib-versioning
thor
mixlib-log (3.0.9)
mixlib-shellout (3.2.5)
chef-utils
mixlib-versioning (1.2.12)
molinillo (0.7.0)
multi_json (1.15.0)
multipart-post (2.1.1)
net-scp (3.0.0)
net-ssh (>= 2.6.5, < 7.0.0)
net-sftp (3.0.0)
net-ssh (>= 5.0.0, < 7.0.0)
net-ssh (6.1.0)
net-ssh-gateway (2.0.0)
net-ssh (>= 4.0.0)
net-ssh-multi (1.2.1)
net-ssh (>= 2.6.5)
net-ssh-gateway (>= 1.2.0)
nori (2.6.0)
octokit (4.21.0)
faraday (>= 0.9)
sawyer (~> 0.8.0, >= 0.5.3)
ohai (16.13.0)
chef-config (>= 12.8, < 17)
chef-utils (>= 16.0, < 17)
ffi (~> 1.9)
ffi-yajl (~> 2.2)
ipaddress
mixlib-cli (>= 1.7.0)
mixlib-config (>= 2.0, < 4.0)
mixlib-log (>= 2.0.1, < 4.0)
mixlib-shellout (>= 2.0, < 4.0)
plist (~> 3.1)
train-core
wmi-lite (~> 1.0)
omnibus (8.1.15)
aws-sdk-s3 (~> 1)
chef-cleanroom (~> 1.0)
chef-utils (>= 15.4)
contracts (>= 0.16.0, < 0.17.0)
ffi-yajl (~> 2.2)
license_scout (~> 1.0)
mixlib-shellout (>= 2.0, < 4.0)
mixlib-versioning
ohai (>= 15, < 17)
pedump
ruby-progressbar (~> 1.7)
thor (>= 0.18, < 2.0)
parallel (1.20.1)
parser (3.0.2.0)
ast (~> 2.4.1)
parslet (1.8.2)
pastel (0.8.0)
tty-color (~> 0.5)
pedump (0.6.2)
awesome_print
iostruct (>= 0.0.4)
multipart-post (>= 2.0.0)
rainbow
zhexdump (>= 0.0.2)
plist (3.6.0)
proxifier (1.0.3)
pry (0.14.1)
coderay (~> 1.1)
method_source (~> 1.0)
public_suffix (4.0.6)
rack (2.2.3)
rainbow (3.0.0)
regexp_parser (2.1.1)
retryable (3.0.5)
rexml (3.2.5)
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
rspec-mocks (~> 3.10.0)
rspec-core (3.10.1)
rspec-support (~> 3.10.0)
rspec-expectations (3.10.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-its (1.3.0)
rspec-core (>= 3.0.0)
rspec-expectations (>= 3.0.0)
rspec-mocks (3.10.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-support (3.10.2)
rubocop (1.18.4)
parallel (~> 1.10)
parser (>= 3.0.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml
rubocop-ast (>= 1.8.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.8.0)
parser (>= 3.0.1.1)
ruby-progressbar (1.11.0)
ruby2_keywords (0.0.5)
rubyntlm (0.6.3)
rubyzip (2.3.2)
sawyer (0.8.2)
addressable (>= 2.3.5)
faraday (> 0.8, < 2.0)
semverse (3.0.0)
solve (4.0.4)
molinillo (~> 0.6)
semverse (>= 1.1, < 4.0)
sslshake (1.3.1)
strings (0.2.1)
strings-ansi (~> 0.2)
unicode-display_width (>= 1.5, < 3.0)
unicode_utils (~> 1.4)
strings-ansi (0.2.0)
syslog-logger (1.6.8)
test-kitchen (3.0.0)
bcrypt_pbkdf (~> 1.0)
chef-utils (>= 16.4.35)
ed25519 (~> 1.2)
license-acceptance (>= 1.0.11, < 3.0)
mixlib-install (~> 3.6)
mixlib-shellout (>= 1.2, < 4.0)
net-scp (>= 1.1, < 4.0)
net-ssh (>= 2.9, < 7.0)
net-ssh-gateway (>= 1.2, < 3.0)
thor (>= 0.19, < 2.0)
winrm (~> 2.0)
winrm-elevated (~> 1.0)
winrm-fs (~> 1.1)
thor (1.1.0)
toml-rb (2.0.1)
citrus (~> 3.0, > 3.0)
tomlrb (1.3.0)
train-core (3.8.1)
addressable (~> 2.5)
ffi (!= 1.13.0)
json (>= 1.8, < 3.0)
mixlib-shellout (>= 2.0, < 4.0)
net-scp (>= 1.2, < 4.0)
net-ssh (>= 2.9, < 7.0)
train-winrm (0.2.12)
winrm (>= 2.3.6, < 3.0)
winrm-elevated (~> 1.2.2)
winrm-fs (~> 1.0)
tty-box (0.7.0)
pastel (~> 0.8)
strings (~> 0.2.0)
tty-cursor (~> 0.7)
tty-color (0.6.0)
tty-cursor (0.7.1)
tty-prompt (0.23.1)
pastel (~> 0.8)
tty-reader (~> 0.8)
tty-reader (0.9.0)
tty-cursor (~> 0.7)
tty-screen (~> 0.8)
wisper (~> 2.0)
tty-screen (0.8.1)
tty-table (0.12.0)
pastel (~> 0.8)
strings (~> 0.2.0)
tty-screen (~> 0.8)
unicode-display_width (2.0.0)
unicode_utils (1.4.0)
uuidtools (2.2.0)
webrick (1.7.0)
winrm (2.3.6)
builder (>= 2.1.2)
erubi (~> 1.8)
gssapi (~> 1.2)
gyoku (~> 1.0)
httpclient (~> 2.2, >= 2.2.0.2)
logging (>= 1.6.1, < 3.0)
nori (~> 2.0)
rubyntlm (~> 0.6.0, >= 0.6.3)
winrm-elevated (1.2.3)
erubi (~> 1.8)
winrm (~> 2.0)
winrm-fs (~> 1.0)
winrm-fs (1.3.5)
erubi (~> 1.8)
logging (>= 1.6.1, < 3.0)
rubyzip (~> 2.0)
winrm (~> 2.0)
wisper (2.0.1)
wmi-lite (1.0.5)
zhexdump (0.0.2)
PLATFORMS
arm64-darwin-20
ruby
DEPENDENCIES
berkshelf
kitchen-vagrant
omnibus (~> 8.1)
rubocop
test-kitchen
BUNDLED WITH
2.2.25

124
omnibus/README.md Normal file
View File

@@ -0,0 +1,124 @@
firezone Omnibus project
========================
This project creates full-stack platform-specific packages for
`firezone`!
Installation
------------
You must have a sane Ruby 2.0.0+ environment with Bundler installed. Ensure all
the required gems are installed:
```shell
$ bundle install --binstubs
```
Usage
-----
### Build
You create a platform-specific package using the `build project` command:
```shell
$ bin/omnibus build firezone
```
The platform/architecture type of the package created will match the platform
where the `build project` command is invoked. For example, running this command
on a MacBook Pro will generate a Mac OS X package. After the build completes
packages will be available in the `pkg/` folder.
### Clean
You can clean up all temporary files generated during the build process with
the `clean` command:
```shell
$ bin/omnibus clean firezone
```
Adding the `--purge` purge option removes __ALL__ files generated during the
build including the project install directory (`/opt/firezone`) and
the package cache directory (`/var/cache/omnibus/pkg`):
```shell
$ bin/omnibus clean firezone --purge
```
### Publish
Omnibus has a built-in mechanism for releasing to a variety of "backends", such
as Amazon S3. You must set the proper credentials in your
[`omnibus.rb`](omnibus.rb) config file or specify them via the command line.
```shell
$ bin/omnibus publish path/to/*.deb --backend s3
```
### Help
Full help for the Omnibus command line interface can be accessed with the
`help` command:
```shell
$ bin/omnibus help
```
Version Manifest
----------------
Git-based software definitions may specify branches as their
default_version. In this case, the exact git revision to use will be
determined at build-time unless a project override (see below) or
external version manifest is used. To generate a version manifest use
the `omnibus manifest` command:
```
omnibus manifest PROJECT -l warn
```
This will output a JSON-formatted manifest containing the resolved
version of every software definition.
Kitchen-based Build Environment
-------------------------------
Every Omnibus project ships with a project-specific
[Berksfile](https://docs.chef.io/berkshelf.html) that will allow you to build
your omnibus projects on all of the platforms listed in the
[`.kitchen.yml`](.kitchen.yml). You can add/remove additional platforms as
needed by changing the list found in the [`.kitchen.yml`](.kitchen.yml)
`platforms` YAML stanza.
This build environment is designed to get you up-and-running quickly. However,
there is nothing that restricts you from building on other platforms. Simply use
the [omnibus cookbook](https://github.com/chef-cookbooks/omnibus) to setup your
desired platform and execute the build steps listed above.
The default build environment requires Test Kitchen and VirtualBox for local
development. Test Kitchen also exposes the ability to provision instances using
various cloud providers like AWS, DigitalOcean, or OpenStack. For more
information, please see the [Test Kitchen documentation](https://kitchen.ci/).
Once you have tweaked your [`.kitchen.yml`](.kitchen.yml) (or
[`.kitchen.local.yml`](.kitchen.local.yml)) to your liking, you can bring up an
individual build environment using the `kitchen` command.
```shell
$ bin/kitchen converge ubuntu-1804
```
Then login to the instance and build the project as described in the Usage
section:
```shell
$ bin/kitchen login ubuntu-1804
[vagrant@ubuntu...] $ . load-omnibus-toolchain.sh
[vagrant@ubuntu...] $ [ -e .bundle ] && sudo chown -R vagrant:vagrant .bundle
[vagrant@ubuntu...] $ cd firezone # or 'cd firezone/omnibus' if your omnibus project is embedded in your main project
[vagrant@ubuntu...] $ bundle install
[vagrant@ubuntu...] $ bin/omnibus build firezone
```
For a complete list of all commands and platforms, run `kitchen list` or
`kitchen help`.

View File

@@ -0,0 +1,11 @@
--- bzip2-1.0.8/Makefile-libbz2_so.orig 2019-07-24 10:33:36.184131389 -0400
+++ bzip2-1.0.8/Makefile-libbz2_so 2019-07-24 10:35:20.564277676 -0400
@@ -35,7 +35,7 @@
bzlib.o
all: $(OBJS)
- $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.8 $(OBJS)
+ $(CC) -qmkshrobj -Wl,-soname -o libbz2.so.1.0.8 $(OBJS)
$(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8
rm -f libbz2.so.1.0
ln -s libbz2.so.1.0.8 libbz2.so.1.0

View File

@@ -0,0 +1,77 @@
--- bzip2-1.0.8/Makefile-orig 2019-07-13 10:50:05.000000000 -0700
+++ bzip2-1.0.8/Makefile 2020-08-14 16:35:23.000000000 -0700
@@ -35,14 +35,11 @@
decompress.o \
bzlib.o
-all: libbz2.a bzip2 bzip2recover test
+all: libbz2.a bzip2 test
bzip2: libbz2.a bzip2.o
$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2
-bzip2recover: bzip2recover.o
- $(CC) $(CFLAGS) $(LDFLAGS) -o bzip2recover bzip2recover.o
-
libbz2.a: $(OBJS)
rm -f libbz2.a
$(AR) cq libbz2.a $(OBJS)
@@ -69,47 +66,19 @@
cmp sample3.tst sample3.ref
@cat words3
-install: bzip2 bzip2recover
+install: bzip2
if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi
if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi
if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi
if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi
- cp -f bzip2 $(PREFIX)/bin/bzip2
- cp -f bzip2 $(PREFIX)/bin/bunzip2
- cp -f bzip2 $(PREFIX)/bin/bzcat
- cp -f bzip2recover $(PREFIX)/bin/bzip2recover
- chmod a+x $(PREFIX)/bin/bzip2
- chmod a+x $(PREFIX)/bin/bunzip2
- chmod a+x $(PREFIX)/bin/bzcat
- chmod a+x $(PREFIX)/bin/bzip2recover
- cp -f bzip2.1 $(PREFIX)/man/man1
- chmod a+r $(PREFIX)/man/man1/bzip2.1
cp -f bzlib.h $(PREFIX)/include
chmod a+r $(PREFIX)/include/bzlib.h
cp -f libbz2.a $(PREFIX)/lib
chmod a+r $(PREFIX)/lib/libbz2.a
- cp -f bzgrep $(PREFIX)/bin/bzgrep
- ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
- ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
- chmod a+x $(PREFIX)/bin/bzgrep
- cp -f bzmore $(PREFIX)/bin/bzmore
- ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
- chmod a+x $(PREFIX)/bin/bzmore
- cp -f bzdiff $(PREFIX)/bin/bzdiff
- ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
- chmod a+x $(PREFIX)/bin/bzdiff
- cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
- chmod a+r $(PREFIX)/man/man1/bzgrep.1
- chmod a+r $(PREFIX)/man/man1/bzmore.1
- chmod a+r $(PREFIX)/man/man1/bzdiff.1
- echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzegrep.1
- echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzfgrep.1
- echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1
- echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1
clean:
- rm -f *.o libbz2.a bzip2 bzip2recover \
+ rm -f *.o libbz2.a bzip2 \
sample1.rb2 sample2.rb2 sample3.rb2 \
sample1.tst sample2.tst sample3.tst
@@ -130,8 +99,6 @@
$(CC) $(CFLAGS) -c bzlib.c
bzip2.o: bzip2.c
$(CC) $(CFLAGS) -c bzip2.c
-bzip2recover.o: bzip2recover.c
- $(CC) $(CFLAGS) -c bzip2recover.c
distclean: clean

View File

@@ -0,0 +1,31 @@
--- bzip2-1.0.6/Makefile-orig 2010-09-10 17:46:02.000000000 -0500
+++ bzip2-1.0.6/Makefile 2013-11-21 13:55:11.000000000 -0600
@@ -15,13 +15,13 @@
SHELL=/bin/sh
# To assist in cross-compiling
-CC=gcc
+CC?=gcc
AR=ar
RANLIB=ranlib
-LDFLAGS=
+LDFLAGS+=
-BIGFILES=-D_FILE_OFFSET_BITS=64
+BIGFILES?=-D_FILE_OFFSET_BITS=64
-CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
+CFLAGS+=-Wall -Winline -O2 -g $(BIGFILES)
# Where you want it installed when you do 'make install'
PREFIX=/usr/local
--- bzip2-1.0.6/Makefile-libbz2_so-orig 2017-03-21 19:43:16.706849481 +0000
+++ bzip2-1.0.6/Makefile-libbz2_so 2017-03-21 19:43:01.187851955 +0000
@@ -22,7 +22,7 @@
SHELL=/bin/sh
-CC=gcc
+CC?=gcc
BIGFILES=-D_FILE_OFFSET_BITS=64
CFLAGS=-fpic -fPIC -Wall -Winline -O2 -g $(BIGFILES)

View File

@@ -0,0 +1,11 @@
--- bzip2-1.0.8/Makefile-libbz2_so.orig 2019-07-24 10:33:36.184131389 -0400
+++ bzip2-1.0.8/Makefile-libbz2_so 2019-07-24 10:38:15.700843785 -0400
@@ -35,7 +35,7 @@
bzlib.o
all: $(OBJS)
- $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.8 $(OBJS)
+ $(CC) -shared -Wl,-install_name -Wl,libbz2.so.1.0 -o libbz2.so.1.0.8 $(OBJS)
$(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8
rm -f libbz2.so.1.0
ln -s libbz2.so.1.0.8 libbz2.so.1.0

View File

@@ -0,0 +1,83 @@
From fae952def3698b588b96231862123ee3547c702e Mon Sep 17 00:00:00 2001
From: Steven Danna <steve@chef.io>
Date: Tue, 14 Nov 2017 21:08:05 +0000
Subject: [PATCH] epmd: require explicitly adding address
Based on the following PR:
https://github.com/erlang/otp/pull/1075/commits/0800214dc6aec5327f4e984047dd05a8829ae5e4
---
erts/epmd/src/epmd_srv.c | 31 ++++++++++++-------------------
1 file changed, 12 insertions(+), 19 deletions(-)
diff --git a/erts/epmd/src/epmd_srv.c b/erts/epmd/src/epmd_srv.c
index e1bac99ef9..f42a97330e 100644
--- a/erts/epmd/src/epmd_srv.c
+++ b/erts/epmd/src/epmd_srv.c
@@ -257,14 +257,6 @@ void run(EpmdVars *g)
char *tmp = NULL;
char *token = NULL;
- /* Always listen on the loopback. */
- SET_ADDR(iserv_addr[num_sockets],htonl(INADDR_LOOPBACK),sport);
- num_sockets++;
-#if defined(EPMD6)
- SET_ADDR6(iserv_addr[num_sockets],in6addr_loopback,sport);
- num_sockets++;
-#endif
-
if ((tmp = strdup(g->addresses)) == NULL)
{
dbg_perror(g,"cannot allocate memory");
@@ -278,7 +270,6 @@ void run(EpmdVars *g)
struct in_addr addr;
#if defined(EPMD6)
struct in6_addr addr6;
- struct sockaddr_storage *sa = &iserv_addr[num_sockets];
if (inet_pton(AF_INET6,token,&addr6) == 1)
{
@@ -301,15 +292,6 @@ void run(EpmdVars *g)
epmd_cleanup_exit(g,1);
}
-#if defined(EPMD6)
- if (sa->ss_family == AF_INET6 && IN6_IS_ADDR_LOOPBACK(&addr6))
- continue;
-
- if (sa->ss_family == AF_INET)
-#endif
- if (IS_ADDR_LOOPBACK(addr))
- continue;
-
num_sockets++;
if (num_sockets >= MAX_LISTEN_SOCKETS)
@@ -374,13 +356,24 @@ void run(EpmdVars *g)
switch (errno) {
case EAFNOSUPPORT:
case EPROTONOSUPPORT:
+ /*
+ * Log error but continue. We can get here for
+ * in6addr_any on machines that don't have IPv6
+ * support. If we can't bind any addresses, we'll
+ * exit further down
+ *
+ */
+ dbg_perror(g,"error opening stream socket");
continue;
default:
dbg_perror(g,"error opening stream socket");
epmd_cleanup_exit(g,1);
}
}
- g->listenfd[bound++] = listensock[i];
+ else
+ {
+ g->listenfd[bound++] = listensock[i];
+ }
#if HAVE_DECL_IPV6_V6ONLY
opt = 1;
--
2.14.1

View File

@@ -0,0 +1,24 @@
diff -ruN libedit-20120601-3.0/src/vi.c libedit-20120601-3.0.fixed/src/vi.c
--- libedit-20120601-3.0/src/vi.c 2012-03-11 09:54:58.000000000 +0000
+++ libedit-20120601-3.0.fixed/src/vi.c 2013-02-08 05:22:16.338954507 +0000
@@ -918,17 +918,15 @@
* NB: posix implies that we should enter insert mode, however
* this is against historical precedent...
*/
-#ifdef __weak_reference
-__weakref_visible char *my_get_alias_text(const char *)
- __weak_reference(get_alias_text);
-#endif
protected el_action_t
/*ARGSUSED*/
vi_alias(EditLine *el, Int c __attribute__((__unused__)))
{
-#ifdef __weak_reference
+#ifdef __weak_extern
char alias_name[3];
char *alias_text;
+ extern __weakref_visible char *my_get_alias_text(const char *);
+ __weak_extern(get_alias_text);
if (my_get_alias_text == 0) {
return CC_ERROR;

View File

@@ -0,0 +1,48 @@
diff -ur libedit-20120601-3.0.orig/src/strlcat.c libedit-20120601-3.0/src/strlcat.c
--- libedit-20120601-3.0.orig/src/strlcat.c Wed May 13 17:47:58 2015
+++ libedit-20120601-3.0/src/strlcat.c Wed May 13 17:48:14 2015
@@ -29,7 +29,7 @@
#ifdef _LIBC
# ifdef __weak_alias
-__weak_alias(strlcat, _strlcat)
+//__weak_alias(strlcat, _strlcat)
# endif
#endif
diff -ur libedit-20120601-3.0.orig/src/strlcpy.c libedit-20120601-3.0/src/strlcpy.c
--- libedit-20120601-3.0.orig/src/strlcpy.c Wed May 13 17:47:58 2015
+++ libedit-20120601-3.0/src/strlcpy.c Wed May 13 17:48:14 2015
@@ -29,7 +29,7 @@
#ifdef _LIBC
# ifdef __weak_alias
-__weak_alias(strlcpy, _strlcpy)
+//__weak_alias(strlcpy, _strlcpy)
# endif
#endif
diff -ur libedit-20120601-3.0.orig/src/unvis.c libedit-20120601-3.0/src/unvis.c
--- libedit-20120601-3.0.orig/src/unvis.c Wed May 13 17:47:58 2015
+++ libedit-20120601-3.0/src/unvis.c Wed May 13 17:48:14 2015
@@ -50,7 +50,7 @@
#include <vis.h>
#ifdef __weak_alias
-__weak_alias(strnunvisx,_strnunvisx)
+//__weak_alias(strnunvisx,_strnunvisx)
#endif
#if !HAVE_VIS
diff -ur libedit-20120601-3.0.orig/src/vis.c libedit-20120601-3.0/src/vis.c
--- libedit-20120601-3.0.orig/src/vis.c Wed May 13 17:47:58 2015
+++ libedit-20120601-3.0/src/vis.c Wed May 13 17:48:14 2015
@@ -69,7 +69,7 @@
#include <stdlib.h>
#ifdef __weak_alias
-__weak_alias(strvisx,_strvisx)
+//__weak_alias(strvisx,_strvisx)
#endif
#if !HAVE_VIS || !HAVE_SVIS

View File

@@ -0,0 +1,83 @@
--- libffi-3.2.1-orig/configure.ac 2014-11-12 05:56:51.000000000 -0600
+++ libffi-3.2.1/configure.ac 2015-10-29 15:53:41.695055040 -0500
@@ -590,6 +590,10 @@
AC_DEFINE(USING_PURIFY, 1, [Define this if you are using Purify and want to suppress spurious messages.])
fi)
+AC_ARG_ENABLE(multi-os-directory,
+[ --disable-multi-os-directory
+ disable use of gcc --print-multi-os-directory to change the library installation directory])
+
# These variables are only ever used when we cross-build to X86_WIN32.
# And we only support this with GCC, so...
if test "x$GCC" = "xyes"; then
@@ -601,11 +605,13 @@
toolexecdir="${libdir}"/gcc-lib/'$(target_alias)'
toolexeclibdir="${libdir}"
fi
- multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
- case $multi_os_directory in
- .) ;; # Avoid trailing /.
- ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
- esac
+ if test x"$enable_multi_os_directory" != x"no"; then
+ multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
+ case $multi_os_directory in
+ .) ;; # Avoid trailing /.
+ ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
+ esac
+ fi
AC_SUBST(toolexecdir)
else
toolexeclibdir="${libdir}"
--- libffi-3.2.1-orig/configure 2014-11-12 11:59:57.000000000 +0000
+++ libffi-3.2.1/configure 2015-10-30 19:50:51.082221000 +0000
@@ -886,6 +886,7 @@
enable_structs
enable_raw_api
enable_purify_safety
+enable_multi_os_directory
'
ac_precious_vars='build_alias
host_alias
@@ -1538,6 +1539,8 @@
--disable-structs omit code for struct support
--disable-raw-api make the raw api unavailable
--enable-purify-safety purify-safe mode
+ --disable-multi-os-directory
+ disable use of gcc --print-multi-os-directory to change the library installation directory
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -18714,6 +18717,12 @@
fi
+# Check whether --enable-multi-os-directory was given.
+if test "${enable_multi_os_directory+set}" = set; then :
+ enableval=$enable_multi_os_directory;
+fi
+
+
# These variables are only ever used when we cross-build to X86_WIN32.
# And we only support this with GCC, so...
if test "x$GCC" = "xyes"; then
@@ -18725,11 +18734,13 @@
toolexecdir="${libdir}"/gcc-lib/'$(target_alias)'
toolexeclibdir="${libdir}"
fi
- multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
- case $multi_os_directory in
- .) ;; # Avoid trailing /.
- ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
- esac
+ if test x"$enable_multi_os_directory" != x"no"; then
+ multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
+ case $multi_os_directory in
+ .) ;; # Avoid trailing /.
+ ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
+ esac
+ fi
else
toolexeclibdir="${libdir}"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,115 @@
diff -up m4-1.4.18/lib/fflush.c.orig m4-1.4.18/lib/fflush.c
--- m4-1.4.18/lib/fflush.c.orig 2018-05-02 12:35:59.536851666 +0200
+++ m4-1.4.18/lib/fflush.c 2018-05-02 12:37:02.768958606 +0200
@@ -33,7 +33,7 @@
#undef fflush
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
/* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */
static void
@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp)
#endif
-#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
# if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream)
if (stream == NULL || ! freading (stream))
return fflush (stream);
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
clear_ungetc_buffer_preserving_position (stream);
diff -up m4-1.4.18/lib/fpending.c.orig m4-1.4.18/lib/fpending.c
--- m4-1.4.18/lib/fpending.c.orig 2018-05-02 12:35:32.305806774 +0200
+++ m4-1.4.18/lib/fpending.c 2018-05-02 12:35:44.944827347 +0200
@@ -32,7 +32,7 @@ __fpending (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
return fp->_IO_write_ptr - fp->_IO_write_base;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
diff -up m4-1.4.18/lib/fpurge.c.orig m4-1.4.18/lib/fpurge.c
--- m4-1.4.18/lib/fpurge.c.orig 2018-05-02 12:38:13.586078669 +0200
+++ m4-1.4.18/lib/fpurge.c 2018-05-02 12:38:38.785121867 +0200
@@ -62,7 +62,7 @@ fpurge (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_IO_read_end = fp->_IO_read_ptr;
fp->_IO_write_ptr = fp->_IO_write_base;
/* Avoid memory leak when there is an active ungetc buffer. */
diff -up m4-1.4.18/lib/freadahead.c.orig m4-1.4.18/lib/freadahead.c
--- m4-1.4.18/lib/freadahead.c.orig 2016-12-31 14:54:41.000000000 +0100
+++ m4-1.4.18/lib/freadahead.c 2018-05-02 11:43:19.570336724 +0200
@@ -25,7 +25,7 @@
size_t
freadahead (FILE *fp)
{
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_write_ptr > fp->_IO_write_base)
return 0;
return (fp->_IO_read_end - fp->_IO_read_ptr)
diff -up m4-1.4.18/lib/freading.c.orig m4-1.4.18/lib/freading.c
--- m4-1.4.18/lib/freading.c.orig 2018-05-02 12:37:33.970011368 +0200
+++ m4-1.4.18/lib/freading.c 2018-05-02 12:37:59.393054359 +0200
@@ -31,7 +31,7 @@ freading (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
return ((fp->_flags & _IO_NO_WRITES) != 0
|| ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
&& fp->_IO_read_base != NULL));
diff -up m4-1.4.18/lib/fseeko.c.orig m4-1.4.18/lib/fseeko.c
--- m4-1.4.18/lib/fseeko.c.orig 2018-05-02 11:44:17.947460233 +0200
+++ m4-1.4.18/lib/fseeko.c 2018-05-02 12:39:49.537216897 +0200
@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int when
#endif
/* These tests are based on fpurge.c. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_read_end == fp->_IO_read_ptr
&& fp->_IO_write_ptr == fp->_IO_write_base
&& fp->_IO_save_base == NULL)
@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int when
return -1;
}
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags &= ~_IO_EOF_SEEN;
fp->_offset = pos;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
diff -up m4-1.4.18/lib/stdio-impl.h.orig m4-1.4.18/lib/stdio-impl.h
--- m4-1.4.18/lib/stdio-impl.h.orig 2016-12-31 14:54:42.000000000 +0100
+++ m4-1.4.18/lib/stdio-impl.h 2018-05-02 11:43:19.570336724 +0200
@@ -18,6 +18,12 @@
the same implementation of stdio extension API, except that some fields
have different naming conventions, or their access requires some casts. */
+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
+ problem by defining it ourselves. FIXME: Do not rely on glibc
+ internals. */
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
+# define _IO_IN_BACKUP 0x100
+#endif
/* BSD stdio derived implementations. */

View File

@@ -0,0 +1,46 @@
https://bugs.gentoo.org/545114
extracted from the upstream change (which had many unrelated commits in one)
From 97bb4678dc03e753290b39bbff30ba2825df9517 Mon Sep 17 00:00:00 2001
From: "Thomas E. Dickey" <dickey@invisible-island.net>
Date: Sun, 7 Dec 2014 03:10:09 +0000
Subject: [PATCH] ncurses 5.9 - patch 20141206
+ modify MKlib_gen.sh to work around change in development version of
gcc introduced here:
https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html
(reports by Marcus Shawcroft, Maohui Lei).
diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh
index d8cc3c9..b91398c 100755
--- a/ncurses/base/MKlib_gen.sh
+++ b/ncurses/base/MKlib_gen.sh
@@ -474,11 +474,22 @@ sed -n -f $ED1 \
-e 's/gen_$//' \
-e 's/ / /g' >>$TMP
+cat >$ED1 <<EOF
+s/ / /g
+s/^ //
+s/ $//
+s/P_NCURSES_BOOL/NCURSES_BOOL/g
+EOF
+
+# A patch discussed here:
+# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
+# introduces spurious #line markers. Work around that by ignoring the system's
+# attempt to define "bool" and using our own symbol here.
+sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2
+cat $ED2 >$TMP
+
$preprocessor $TMP 2>/dev/null \
-| sed \
- -e 's/ / /g' \
- -e 's/^ //' \
- -e 's/_Bool/NCURSES_BOOL/g' \
+| sed -f $ED1 \
| $AWK -f $AW2 \
| sed -f $ED3 \
| sed \

View File

@@ -0,0 +1,11 @@
--- configure.after.pkgin.patches 2012-12-17 01:06:16.964187316 +0000
+++ configure 2012-12-17 01:07:17.046932230 +0000
@@ -7864,7 +7864,7 @@
else
echo "$as_me: failed program was:" >&5
cat conftest.$ac_ext >&5
-cf_result=yes
+cf_result=no
fi
rm -f conftest.$ac_objext conftest.$ac_ext
echo "$as_me:7863: result: $cf_result" >&5

View File

@@ -0,0 +1,42 @@
diff -ruNp ncurses-5.9.orig/c++/cursesf.h ncurses-5.9/c++/cursesf.h
--- ncurses-5.9.orig/c++/cursesf.h 2005-08-13 21:08:24.000000000 +0300
+++ ncurses-5.9/c++/cursesf.h 2011-04-03 18:29:29.000000000 +0300
@@ -681,7 +681,7 @@ public:
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE,
bool autoDelete_Fields=FALSE)
- : NCursesForm (Fields, with_frame, autoDelete_Fields) {
+ : NCursesForm (&Fields, with_frame, autoDelete_Fields) {
if (form)
set_user (const_cast<void *>(p_UserData));
};
@@ -694,7 +694,7 @@ public:
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE,
bool autoDelete_Fields=FALSE)
- : NCursesForm (Fields, nlines, ncols, begin_y, begin_x,
+ : NCursesForm (&Fields, nlines, ncols, begin_y, begin_x,
with_frame, autoDelete_Fields) {
if (form)
set_user (const_cast<void *>(p_UserData));
diff -ruNp ncurses-5.9.orig/c++/cursesm.h ncurses-5.9/c++/cursesm.h
--- ncurses-5.9.orig/c++/cursesm.h 2005-08-13 21:10:36.000000000 +0300
+++ ncurses-5.9/c++/cursesm.h 2011-04-03 18:31:42.000000000 +0300
@@ -639,7 +639,7 @@ public:
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE,
bool autoDelete_Items=FALSE)
- : NCursesMenu (Items, with_frame, autoDelete_Items) {
+ : NCursesMenu (&Items, with_frame, autoDelete_Items) {
if (menu)
set_user (const_cast<void *>(p_UserData));
};
@@ -651,7 +651,7 @@ public:
int begin_x = 0,
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE)
- : NCursesMenu (Items, nlines, ncols, begin_y, begin_x, with_frame) {
+ : NCursesMenu (&Items, nlines, ncols, begin_y, begin_x, with_frame) {
if (menu)
set_user (const_cast<void *>(p_UserData));
};

View File

@@ -0,0 +1,23 @@
$NetBSD: patch-aa,v 1.16 2011/02/28 11:02:46 adam Exp $
--- misc/run_tic.in.orig 2006-10-28 21:43:30.000000000 +0200
+++ misc/run_tic.in
@@ -122,7 +122,7 @@ TICDIR=`echo $TERMINFO | sed -e 's%/shar
# would generate a lot of confusing error messages if we tried to overwrite it.
# We explicitly remove its contents rather than the directory itself, in case
# the directory is actually a symbolic link.
-( test -d "$TERMINFO" && cd $TERMINFO && rm -fr ? 2>/dev/null )
+#( test -d "$TERMINFO" && cd $TERMINFO && rm -fr ? 2>/dev/null )
if test "$ext_funcs" = 1 ; then
cat <<EOF
@@ -164,6 +164,9 @@ else
fi
fi
+# For NetBSD pkgsrc, don't bother with setting a symbolic link.
+exit 0
+
# Make a symbolic link to provide compatibility with applications that expect
# to find terminfo under /usr/lib. That is, we'll _try_ to do that. Not
# all systems support symbolic links, and those that do provide a variety

View File

@@ -0,0 +1,44 @@
$NetBSD: patch-ab,v 1.16 2011/02/28 11:02:46 adam Exp $
--- mk-1st.awk.orig 2010-08-07 20:42:30.000000000 +0000
+++ mk-1st.awk
@@ -396,11 +396,11 @@ END {
end_name = lib_name;
printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
if ( is_ticlib() ) {
- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TICS_LIST)\n", compile, lib_name, OBJS, libtool_version
+ printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:.o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TICS_LIST)\n", compile, lib_name, OBJS, libtool_version
} else if ( is_termlib() ) {
- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TINFO_LIST)\n", compile, lib_name, OBJS, libtool_version
+ printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:.o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TINFO_LIST)\n", compile, lib_name, OBJS, libtool_version
} else {
- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)\n", compile, lib_name, OBJS, libtool_version
+ printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:.o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)\n", compile, lib_name, OBJS, libtool_version
}
print ""
print "install \\"
@@ -469,7 +469,7 @@ END {
print "mostlyclean::"
printf "\t-rm -f $(%s_OBJS)\n", OBJS
if ( MODEL == "LIBTOOL" ) {
- printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
+ printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:.o=.lo)\n", OBJS
}
}
else if ( found == 2 )
@@ -478,13 +478,13 @@ END {
print "mostlyclean::"
printf "\t-rm -f $(%s_OBJS)\n", OBJS
if ( MODEL == "LIBTOOL" ) {
- printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
+ printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:.o=.lo)\n", OBJS
}
print ""
print "clean ::"
printf "\t-rm -f $(%s_OBJS)\n", OBJS
if ( MODEL == "LIBTOOL" ) {
- printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
+ printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:.o=.lo)\n", OBJS
}
}
}

View File

@@ -0,0 +1,40 @@
$NetBSD: patch-ac,v 1.18 2011/11/01 14:47:46 hans Exp $
--- configure.orig 2011-02-21 01:40:36.000000000 +0000
+++ configure
@@ -7096,6 +7096,13 @@ sco*) #(vi
# setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
;;
solaris2.1[0-9]) #(vi
+ case "$GCC_VERSION" in
+ 4.[67].*)
+ cf_XOPEN_SOURCE=600
+ cf_add_cflags=-std=c99
+ CPPFLAGS="$CPPFLAGS -std=c99"
+ ;;
+ esac
cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
;;
solaris2.[1-9]) #(vi
@@ -9640,12 +9647,7 @@ case ".$MANPAGE_RENAMES" in #(vi
.no) #(vi
;;
.|.yes)
- # Debian 'man' program?
- if test -f /etc/debian_version ; then
- MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames
- else
MANPAGE_RENAMES=no
- fi
;;
esac
@@ -18449,7 +18444,7 @@ echo "${ECHO_T}$LIB_SUBSETS" >&6
### Construct the list of include-directories to be generated
-CPPFLAGS="$CPPFLAGS -I. -I../include"
+CPPFLAGS="-I. -I../include $CPPFLAGS"
if test "$srcdir" != "."; then
CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
fi

View File

@@ -0,0 +1,12 @@
$NetBSD: patch-ad,v 1.11 2011/02/28 11:02:46 adam Exp $
--- c++/Makefile.in.orig 2010-11-27 21:45:27.000000000 +0000
+++ c++/Makefile.in
@@ -167,7 +167,7 @@ LIB_OBJS = \
../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
cd ../lib && $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) \
- -o $(LIBNAME) $(LIB_OBJS:$o=.lo) \
+ -o $(LIBNAME) $(LIB_OBJS:.o=.lo) \
-rpath $(INSTALL_PREFIX)$(libdir) \
$(LIBTOOL_VERSION) $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)

View File

@@ -0,0 +1,22 @@
$NetBSD: patch-cxx_cursesf.h,v 1.1 2011/02/28 11:02:46 adam Exp $
--- c++/cursesf.h.orig 2011-02-28 09:23:33.000000000 +0000
+++ c++/cursesf.h
@@ -677,7 +677,7 @@ protected:
}
public:
- NCursesUserForm (NCursesFormField Fields[],
+ NCursesUserForm (NCursesFormField *Fields[],
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE,
bool autoDelete_Fields=FALSE)
@@ -686,7 +686,7 @@ public:
set_user (const_cast<void *>(p_UserData));
};
- NCursesUserForm (NCursesFormField Fields[],
+ NCursesUserForm (NCursesFormField *Fields[],
int nlines,
int ncols,
int begin_y = 0,

View File

@@ -0,0 +1,22 @@
$NetBSD: patch-cxx_cursesm.h,v 1.1 2011/02/28 11:02:46 adam Exp $
--- c++/cursesm.h.orig 2011-02-28 09:25:22.000000000 +0000
+++ c++/cursesm.h
@@ -635,7 +635,7 @@ protected:
}
public:
- NCursesUserMenu (NCursesMenuItem Items[],
+ NCursesUserMenu (NCursesMenuItem *Items[],
const T* p_UserData = STATIC_CAST(T*)(0),
bool with_frame=FALSE,
bool autoDelete_Items=FALSE)
@@ -644,7 +644,7 @@ public:
set_user (const_cast<void *>(p_UserData));
};
- NCursesUserMenu (NCursesMenuItem Items[],
+ NCursesUserMenu (NCursesMenuItem *Items[],
int nlines,
int ncols,
int begin_y = 0,

View File

@@ -0,0 +1,24 @@
$NetBSD: patch-ncurses_tinfo_lib__baudrate.c,v 1.1 2014/05/11 16:55:17 rodent Exp $
sys/ttydev.h doesn't exist in OpenBSD 5.5
--- ncurses/tinfo/lib_baudrate.c.orig Sun Dec 19 01:50:50 2010
+++ ncurses/tinfo/lib_baudrate.c
@@ -39,7 +39,7 @@
#include <curses.priv.h>
#include <termcap.h> /* ospeed */
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
#include <sys/param.h>
#endif
@@ -49,7 +49,7 @@
* of the indices up to B115200 fit nicely in a 'short', allowing us to retain
* ospeed's type for compatibility.
*/
-#if (defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || defined(__OpenBSD__)
+#if (defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || (defined(__OpenBSD__) && (OpenBSD < 201405))
#undef B0
#undef B50
#undef B75

View File

@@ -0,0 +1,28 @@
--- openssl-1.0.1f/Makefile.org.orig 2014-01-08 10:58:40.000000000 -0800
+++ openssl-1.0.1f/Makefile.org 2014-01-08 11:06:29.000000000 -0800
@@ -167,7 +167,7 @@
TOP= .
ONEDIRS=out tmp
-EDIRS= times doc bugs util include certs ms shlib mt demos perl sf dep VMS
+EDIRS= times bugs util include certs ms shlib mt demos perl sf dep VMS
WDIRS= windows
LIBS= libcrypto.a libssl.a
SHARED_CRYPTO=libcrypto$(SHLIB_EXT)
@@ -538,7 +538,7 @@
dist_pem_h:
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
-install: all install_docs install_sw
+install: all install_sw
install_sw:
@$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
@@ -603,7 +603,6 @@
echo 'OpenSSL shared libraries have been installed in:'; \
echo ' $(INSTALLTOP)'; \
echo ''; \
- sed -e '1,/^$$/d' doc/openssl-shared.txt; \
fi; \
fi
cp libcrypto.pc $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig

View File

@@ -0,0 +1,20 @@
diff --git a/Makefile.shared b/Makefile.shared
index e8d222a..02ec85b 100644
--- a/Makefile.shared
+++ b/Makefile.shared
@@ -283,13 +283,12 @@ link_a.cygwin:
base=-Wl,--enable-auto-image-base; \
if expr $(PLATFORM) : 'mingw' > /dev/null; then \
case $(LIBNAME) in \
- crypto) SHLIB=libeay;; \
- ssl) SHLIB=ssleay;; \
+ crypto) SHLIB=libeay; base=-Wl,--image-base,0x64000000;; \
+ ssl) SHLIB=ssleay; base=-Wl,--image-base,0x65000000;; \
esac; \
SHLIB_SOVER=32; \
extras="$(LIBNAME).def"; \
$(PERL) util/mkdef.pl 32 $$SHLIB > $$extras; \
- base=; [ $(LIBNAME) = "crypto" -a -n "$(FIPSCANLIB)" ] && base=-Wl,--image-base,0x63000000; \
fi; \
dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
$(PERL) util/mkrc.pl $$dll_name | \

View File

@@ -0,0 +1,20 @@
--- openssl-1.0.1q/Configure.orig 2015-12-15 17:47:52.000000000 -0500
+++ openssl-1.0.1q/Configure 2015-12-15 18:31:01.000000000 -0500
@@ -537,7 +537,7 @@
"BC-32","bcc32::::WIN32::BN_LLONG DES_PTR RC4_INDEX EXPORT_VAR_AS_FN:${no_asm}:win32",
# MinGW
-"mingw", "gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a",
+"mingw", "gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer -O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a",
# As for OPENSSL_USE_APPLINK. Applink makes it possible to use .dll
# compiled with one compiler with application compiled with another
# compiler. It's possible to engage Applink support in mingw64 build,
@@ -545,7 +545,7 @@
# handling, one can't seriously consider its binaries for using with
# non-mingw64 run-time environment. And as mingw64 is always consistent
# with itself, Applink is never engaged and can as well be omitted.
-"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a",
+"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a",
# UWIN
"UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32",

View File

@@ -0,0 +1,54 @@
diff -ur openssl-1.0.2x/Configure openssl-1.0.2x.new/Configure
--- openssl-1.0.2x/Configure 2020-12-08 13:23:12.000000000 +0000
+++ openssl-1.0.2x.new/Configure 2021-01-12 08:24:27.000000000 +0000
@@ -156,6 +156,7 @@
my $x86_elf_asm="$x86_asm:elf";
+my $arm64_asm="arm64cpuid.o:arm64-gcc.o arm64-mont.o arm64-mont5.o arm64-gf2m.o modexp512-arm64.o::aes-arm64.o vpaes-arm64.o bsaes-arm64.o aesni-arm64.o aesni-sha1-arm64.o::md5-arm64.o:sha1-arm64.o sha256-arm64.o sha512-arm64.o::rc4-arm64.o rc4-md5-arm64.o:::wp-arm64.o:cmll-arm64.o cmll_misc.o:ghash-arm64.o:";
my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o:ecp_nistz256.o ecp_nistz256-x86_64.o::aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sha256-mb-x86_64.o::rc4-x86_64.o rc4-md5-x86_64.o:::wp-x86_64.o:cmll-x86_64.o cmll_misc.o:ghash-x86_64.o aesni-gcm-x86_64.o:";
my $ia64_asm="ia64cpuid.o:bn-ia64.o ia64-mont.o:::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o:::::ghash-ia64.o::void";
my $sparcv9_asm="sparcv9cap.o sparccpuid.o:bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o vis3-mont.o sparct4-mont.o sparcv9-gf2m.o::des_enc-sparc.o fcrypt_b.o dest4-sparcv9.o:aes_core.o aes_cbc.o aes-sparcv9.o aest4-sparcv9.o::md5-sparcv9.o:sha1-sparcv9.o sha256-sparcv9.o sha512-sparcv9.o::::::camellia.o cmll_misc.o cmll_cbc.o cmllt4-sparcv9.o:ghash-sparcv9.o::void";
@@ -649,6 +650,7 @@
"darwin64-ppc-cc","cc:-arch ppc64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc64_asm}:osx64:dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"darwin-i386-cc","cc:-arch i386 -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:".eval{my $asm=$x86_asm;$asm=~s/cast\-586\.o//;$asm}.":macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"debug-darwin-i386-cc","cc:-arch i386 -g3 -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:${x86_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
+"darwin64-arm64-cc","cc:-arch arm64 -O3 -DL_ENDIAN -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:".eval{my $asm=$arm64_asm;$asm=~s/rc4\-[^:]+//;$asm}.":macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch arm64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"darwin64-x86_64-cc","cc:-arch x86_64 -O3 -DL_ENDIAN -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:".eval{my $asm=$x86_64_asm;$asm=~s/rc4\-[^:]+//;$asm}.":macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch x86_64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"debug-darwin64-x86_64-cc","cc:-arch x86_64 -ggdb -g2 -O0 -DL_ENDIAN -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:".eval{my $asm=$x86_64_asm;$asm=~s/rc4\-[^:]+//;$asm}.":macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch x86_64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
"debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc32_asm}:osx32:dlfcn:darwin-shared:-fPIC:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
diff -ur openssl-1.0.2x/config openssl-1.0.2x.new/config
--- openssl-1.0.2x/config 2020-12-08 13:23:12.000000000 +0000
+++ openssl-1.0.2x.new/config 2021-01-12 08:39:17.000000000 +0000
@@ -274,6 +274,9 @@
Darwin:*)
case "$MACHINE" in
+ arm*)
+ echo "arm-apple-darwin${VERSION}"
+ ;;
Power*)
echo "ppc-apple-darwin${VERSION}"
;;
@@ -560,6 +563,21 @@
else
OUT="darwin-ppc-cc"
fi ;;
+ arm-apple-darwin*)
+ ISA64=`(sysctl -n hw.optional.arm64) 2>/dev/null`
+ if [ "$ISA64" = "1" -a -z "$KERNEL_BITS" ]; then
+ echo "WARNING! If you wish to build M1 ARM 64-bit library, then you have to"
+ echo " invoke './Configure darwin64-arm64-cc' *manually*."
+ if [ "$TEST" = "false" -a -t 1 ]; then
+ echo " You have about 5 seconds to press Ctrl-C to abort."
+ (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
+ fi
+ fi
+ if [ "$ISA64" = "1" -a "$KERNEL_BITS" = "64" ]; then
+ OUT="darwin64-arm64-cc"
+ else
+ OUT="darwin-arm64-cc"
+ fi ;;
i?86-apple-darwin*)
ISA64=`(sysctl -n hw.optional.x86_64) 2>/dev/null`
if [ "$ISA64" = "1" -a -z "$KERNEL_BITS" ]; then

View File

@@ -0,0 +1,10 @@
--- openssl-1.1.0f/Configurations/unix-Makefile.tmpl.orig 2017-10-22 13:23:48.592533617 +0300
+++ openssl-1.1.0f/Configurations/unix-Makefile.tmpl 2017-10-22 13:26:21.199065333 +0300
@@ -260,7 +260,7 @@
@echo "Tests are not supported with your chosen Configure options"
@ : {- output_on() if !$disabled{tests}; "" -}
-install: install_sw install_ssldirs install_docs
+install: install_sw install_ssldirs
uninstall: uninstall_docs uninstall_sw

View File

@@ -0,0 +1,441 @@
diff -ru perl-5.18.1.orig/Configure perl-5.18.1/Configure
--- perl-5.18.1.orig/Configure 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/Configure 2019-08-21 09:07:10.876345427 -0600
@@ -1381,7 +1381,7 @@
: set usesocks on the Configure command line to enable socks.
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
+libswanted="sfio socket bind inet nm ndbm gdbm dbm db malloc dl dld ld sun"
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
diff -ru perl-5.18.1.orig/configure.com perl-5.18.1/configure.com
--- perl-5.18.1.orig/configure.com 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/configure.com 2019-08-21 09:07:10.878345427 -0600
@@ -121,7 +121,7 @@
$!: full support for void wanted by default !sfn
$!defvoidused=15 !sfn
$!: List of libraries we want. !sfn
-$!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn
+$!libswanted='net socket inet nm ndbm gdbm dbm db malloc dl' !sfn
$!libswanted="$libswanted dld ld sun m c cposix posix ndir dir crypt" !sfn
$!libswanted="$libswanted ucb bsd BSD PW x" !sfn
$!: We probably want to search /usr/shlib before most other libraries. !sfn
diff -ru perl-5.18.1.orig/cpan/Config-Perl-V/t/20_plv.t perl-5.18.1/cpan/Config-Perl-V/t/20_plv.t
--- perl-5.18.1.orig/cpan/Config-Perl-V/t/20_plv.t 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/cpan/Config-Perl-V/t/20_plv.t 2019-08-21 09:07:10.879345427 -0600
@@ -48,8 +48,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
diff -ru perl-5.18.1.orig/Cross/config.sh-arm-linux perl-5.18.1/Cross/config.sh-arm-linux
--- perl-5.18.1.orig/Cross/config.sh-arm-linux 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/Cross/config.sh-arm-linux 2019-08-21 09:08:35.251345202 -0600
@@ -777,12 +777,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.so'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='sfio socket bind inet nm ndbm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -865,7 +865,7 @@
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff -ru perl-5.18.1.orig/Cross/config.sh-arm-linux-n770 perl-5.18.1/Cross/config.sh-arm-linux-n770
--- perl-5.18.1.orig/Cross/config.sh-arm-linux-n770 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/Cross/config.sh-arm-linux-n770 2019-08-21 09:08:35.252345202 -0600
@@ -748,12 +748,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.arma'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='sfio socket bind inet nm ndbm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -835,7 +835,7 @@
perl=''
perl_patchlevel=''
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff -ru perl-5.18.1.orig/hints/aix_4.sh perl-5.18.1/hints/aix_4.sh
--- perl-5.18.1.orig/hints/aix_4.sh 2013-04-30 20:52:55.000000000 -0600
+++ perl-5.18.1/hints/aix_4.sh 2019-08-21 09:07:10.880345427 -0600
@@ -583,7 +583,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -591,7 +591,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ru perl-5.18.1.orig/hints/aix.sh perl-5.18.1/hints/aix.sh
--- perl-5.18.1.orig/hints/aix.sh 2013-08-11 20:44:48.000000000 -0600
+++ perl-5.18.1/hints/aix.sh 2019-08-21 09:07:10.880345427 -0600
@@ -505,7 +505,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -513,7 +513,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ru perl-5.18.1.orig/hints/dgux.sh perl-5.18.1/hints/dgux.sh
--- perl-5.18.1.orig/hints/dgux.sh 2013-08-11 20:44:48.000000000 -0600
+++ perl-5.18.1/hints/dgux.sh 2019-08-21 09:07:10.880345427 -0600
@@ -154,7 +154,7 @@
#libswanted="dbm posix $libswanted"
# Do *NOT* add there the malloc native
# DG/UX library!
-libswanted="dbm posix resolv socket nsl dl m"
+libswanted="dbm posix resolv socket dl m"
#####################################
# <takis@XFree86.Org>
@@ -203,7 +203,7 @@
# DG/UX's sched_yield is in -lrte
# Do *NOT* add there the malloc native
# DG/UX library!
- libswanted="dbm posix resolv socket nsl dl m rte"
+ libswanted="dbm posix resolv socket dl m rte"
archname="ix86-dgux-thread"
sitearch="$prefix/lib/perl518/$archname"
sitelib="$prefix/lib/perl518"
diff -ru perl-5.18.1.orig/hints/epix.sh perl-5.18.1/hints/epix.sh
--- perl-5.18.1.orig/hints/epix.sh 2013-04-30 20:52:55.000000000 -0600
+++ perl-5.18.1/hints/epix.sh 2019-08-21 09:07:10.880345427 -0600
@@ -37,7 +37,7 @@
# Old version had this, but I'm not sure why since the old version
# also mucked around with libswanted. This is also definitely wrong
# if the user is trying to use DB_File or GDBM_File.
-# libs='-lsocket -lnsl -ldbm -ldl -lc -lcrypt -lm -lucb'
+# libs='-lsocket -ldbm -ldl -lc -lcrypt -lm -lucb'
# We include support for using libraries in /usr/ucblib, but the setting
# of libswanted excludes some libraries found there. You may want to
diff -ru perl-5.18.1.orig/hints/gnu.sh perl-5.18.1/hints/gnu.sh
--- perl-5.18.1.orig/hints/gnu.sh 2013-05-23 17:38:10.000000000 -0600
+++ perl-5.18.1/hints/gnu.sh 2019-08-21 09:07:10.880345427 -0600
@@ -4,7 +4,7 @@
# libnsl is unusable on the Hurd.
# XXX remove this once SUNRPC is implemented.
-set `echo X "$libswanted "| sed -e 's/ nsl / /' -e 's/ c / pthread /'`
+set `echo X "$libswanted "| sed -e 's/ c / pthread /'`
shift
libswanted="$*"
diff -ru perl-5.18.1.orig/hints/irix_5.sh perl-5.18.1/hints/irix_5.sh
--- perl-5.18.1.orig/hints/irix_5.sh 2013-02-26 14:28:27.000000000 -0700
+++ perl-5.18.1/hints/irix_5.sh 2019-08-21 09:07:10.881345427 -0600
@@ -27,9 +27,9 @@
esac
lddlflags="-shared"
-# For some reason we don't want -lsocket -lnsl or -ldl. Can anyone
+# For some reason we don't want -lsocket or -ldl. Can anyone
# contribute an explanation?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
diff -ru perl-5.18.1.orig/hints/irix_6_0.sh perl-5.18.1/hints/irix_6_0.sh
--- perl-5.18.1.orig/hints/irix_6_0.sh 2013-02-26 14:28:27.000000000 -0700
+++ perl-5.18.1/hints/irix_6_0.sh 2019-08-21 09:07:10.881345427 -0600
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ru perl-5.18.1.orig/hints/irix_6_1.sh perl-5.18.1/hints/irix_6_1.sh
--- perl-5.18.1.orig/hints/irix_6_1.sh 2013-02-26 14:28:27.000000000 -0700
+++ perl-5.18.1/hints/irix_6_1.sh 2019-08-21 09:07:10.881345427 -0600
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ru perl-5.18.1.orig/hints/irix_6.sh perl-5.18.1/hints/irix_6.sh
--- perl-5.18.1.orig/hints/irix_6.sh 2013-04-30 20:52:55.000000000 -0600
+++ perl-5.18.1/hints/irix_6.sh 2019-08-21 09:07:10.881345427 -0600
@@ -359,7 +359,7 @@
# Socket networking is in libc, these are not installed by default,
# and just slow perl down. (scotth@sgi.com)
# librt contains nothing we need (some places need it for Time::HiRes) --jhi
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /' -e 's/ rt / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /' -e 's/ rt / /'`
shift
libswanted="$*"
diff -ru perl-5.18.1.orig/hints/powerux.sh perl-5.18.1/hints/powerux.sh
--- perl-5.18.1.orig/hints/powerux.sh 2013-04-30 20:52:55.000000000 -0600
+++ perl-5.18.1/hints/powerux.sh 2019-08-21 09:07:10.882345427 -0600
@@ -27,11 +27,11 @@
exit 2
fi
-# We DO NOT want -lmalloc or -lPW, we DO need -lgen to follow -lnsl, so
+# We DO NOT want -lmalloc or -lPW, we DO need -lgen to follow, so
# fixup libswanted to reflect that desire (also need -lresolv if you want
# DNS name lookup to work, which seems desirable :-).
#
-libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /' -e 's/ PW / /' -e 's/ nsl / nsl gen resolv /'`
+libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /' -e 's/ PW / /'`
# We DO NOT want /usr/ucblib in glibpth
#
diff -ru perl-5.18.1.orig/hints/titanos.sh perl-5.18.1/hints/titanos.sh
--- perl-5.18.1.orig/hints/titanos.sh 2013-02-26 14:28:27.000000000 -0700
+++ perl-5.18.1/hints/titanos.sh 2019-08-21 09:07:10.882345427 -0600
@@ -17,14 +17,14 @@
stdchar='unsigned char'
#
# Apparently there are some harmful libs in Configure's $libswanted.
-# Perl5.000 had: libs='-lnsl -ldbm -lPW -lmalloc -lm'
+# Perl5.000 had: libs='-ldbm -lPW -lmalloc -lm'
# Unfortunately, this line prevents users from including things like
# -lgdbm and -ldb, which they may or may not have or want.
# We should probably fiddle with libswanted instead of libs.
# And even there, we should only bother to delete harmful libraries.
# However, I don't know what they are or why they should be deleted,
# so this will have to do for now. --AD 28 Mar 1995
-libswanted='sfio nsl dbm gdbm db PW malloc m'
+libswanted='sfio dbm gdbm db PW malloc m'
#
# Extensions: This system can not compile POSIX. We'll let Configure
# figure out the others.
diff -ru perl-5.18.1.orig/INSTALL perl-5.18.1/INSTALL
--- perl-5.18.1.orig/INSTALL 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/INSTALL 2019-08-21 09:07:10.883345427 -0600
@@ -1583,7 +1583,7 @@
undefined symbols, check the libs variable in the config.sh file. It
should look something like
- libs='-lsocket -lnsl -ldl -lm -lc'
+ libs='-lsocket -ldl -lm -lc'
The exact libraries will vary from system to system, but you typically
need to include at least the math library -lm. Normally, Configure
diff -ru perl-5.18.1.orig/NetWare/config.wc perl-5.18.1/NetWare/config.wc
--- perl-5.18.1.orig/NetWare/config.wc 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/NetWare/config.wc 2019-08-21 09:07:10.883345427 -0600
@@ -757,7 +757,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.18.1.orig/plan9/config_sh.sample perl-5.18.1/plan9/config_sh.sample
--- perl-5.18.1.orig/plan9/config_sh.sample 2013-08-11 20:44:48.000000000 -0600
+++ perl-5.18.1/plan9/config_sh.sample 2019-08-21 09:07:10.883345427 -0600
@@ -764,7 +764,7 @@
libsfiles=''
libsfound=''
libspath=' /lib'
-libswanted='sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
+libswanted='sfio socket bind inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
libswanted_uselargefiles=''
line=''
lint=''
diff -ru perl-5.18.1.orig/pod/perlrun.pod perl-5.18.1/pod/perlrun.pod
--- perl-5.18.1.orig/pod/perlrun.pod 2013-08-11 20:44:48.000000000 -0600
+++ perl-5.18.1/pod/perlrun.pod 2019-08-21 09:07:10.884345427 -0600
@@ -862,11 +862,11 @@
$ perl -V:libc
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.*
libpth='/usr/local/lib /lib /usr/lib';
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
lib_ext='.a';
libc='/lib/libc-2.2.4.so';
libperl='libperl.a';
diff -ru perl-5.18.1.orig/Porting/bisect-runner.pl perl-5.18.1/Porting/bisect-runner.pl
--- perl-5.18.1.orig/Porting/bisect-runner.pl 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/Porting/bisect-runner.pl 2019-08-21 09:07:10.885345427 -0600
@@ -922,7 +922,7 @@
my @libs;
# This is the current libswanted list from Configure, less the libs removed
# by current hints/linux.sh
- foreach my $lib (qw(sfio socket inet nsl nm ndbm gdbm dbm db malloc dl dld
+ foreach my $lib (qw(sfio socket inet nm ndbm gdbm dbm db malloc dl dld
ld sun m crypt sec util c cposix posix ucb BSD)) {
foreach my $dir (@paths) {
next unless -f "$dir/lib$lib.so";
diff -ru perl-5.18.1.orig/Porting/config.sh perl-5.18.1/Porting/config.sh
--- perl-5.18.1.orig/Porting/config.sh 2013-08-11 20:44:47.000000000 -0600
+++ perl-5.18.1/Porting/config.sh 2019-08-21 09:08:35.252345202 -0600
@@ -795,12 +795,12 @@
libc='/lib/libc-2.7.so'
libperl='libperl.a'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
+libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libgdbm.so /usr/lib/libdb.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so /usr/lib/libgdbm_compat.so'
+libsfiles=' libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
+libsfound=' /usr/lib/libgdbm.so /usr/lib/libdb.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so /usr/lib/libgdbm_compat.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='sfio socket inet nsl nm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
+libswanted='sfio socket inet nm gdbm dbm db malloc dl dld ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
libswanted_uselargefiles=''
line=''
lint=''
@@ -886,7 +886,7 @@
perl_patchlevel='34948'
perl_static_inline='static __inline__'
perladmin='yourname@yourhost.yourplace.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/opt/perl/bin/perl5.18.1'
pg='pg'
phostname=''
diff -ru perl-5.18.1.orig/win32/config.ce perl-5.18.1/win32/config.ce
--- perl-5.18.1.orig/win32/config.ce 2013-08-11 20:44:49.000000000 -0600
+++ perl-5.18.1/win32/config.ce 2019-08-21 09:07:10.886345427 -0600
@@ -749,7 +749,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.18.1.orig/win32/config.gc perl-5.18.1/win32/config.gc
--- perl-5.18.1.orig/win32/config.gc 2013-08-11 20:44:49.000000000 -0600
+++ perl-5.18.1/win32/config.gc 2019-08-21 09:07:10.886345427 -0600
@@ -775,8 +775,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.18.1.orig/win32/config.vc perl-5.18.1/win32/config.vc
--- perl-5.18.1.orig/win32/config.vc 2013-08-11 20:44:49.000000000 -0600
+++ perl-5.18.1/win32/config.vc 2019-08-21 09:07:10.887345427 -0600
@@ -774,8 +774,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''

View File

@@ -0,0 +1,512 @@
diff -ru perl-5.22.1.orig/Configure perl-5.22.1/Configure
--- perl-5.22.1.orig/Configure 2015-10-17 06:38:37.000000000 -0600
+++ perl-5.22.1/Configure 2019-08-21 09:12:01.271379908 -0600
@@ -1454,7 +1454,7 @@
: set usesocks on the Configure command line to enable socks.
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="cl pthread socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld"
+libswanted="cl pthread socket bind inet nm ndbm gdbm dbm db malloc dl ld"
libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
diff -ru perl-5.22.1.orig/configure.com perl-5.22.1/configure.com
--- perl-5.22.1.orig/configure.com 2015-10-17 06:38:37.000000000 -0600
+++ perl-5.22.1/configure.com 2019-08-21 09:12:01.271379908 -0600
@@ -119,7 +119,7 @@
$!: machines, like the mips. Usually, it should be empty. !sfn
$!plibpth='' !sfn
$!: List of libraries we want. !sfn
-$!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn
+$!libswanted='net socket inet nm ndbm gdbm dbm db malloc dl' !sfn
$!libswanted="$libswanted ld sun m c cposix posix ndir dir crypt" !sfn
$!libswanted="$libswanted ucb bsd BSD PW x" !sfn
$!: We probably want to search /usr/shlib before most other libraries. !sfn
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/20_plv56.t perl-5.22.1/cpan/Config-Perl-V/t/20_plv56.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/20_plv56.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/20_plv56.t 2019-08-21 09:12:01.272379909 -0600
@@ -58,8 +58,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
- perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
+ libs=-lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
+ perllibs=-ldl -lm -lc -lcrypt -lutil
libc=/lib/libc-2.10.1.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/21_plv58.t perl-5.22.1/cpan/Config-Perl-V/t/21_plv58.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/21_plv58.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/21_plv58.t 2019-08-21 09:12:01.272379909 -0600
@@ -62,8 +62,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.11.2.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.11.2'
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/22_plv510.t perl-5.22.1/cpan/Config-Perl-V/t/22_plv510.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/22_plv510.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/22_plv510.t 2019-08-21 09:12:01.272379909 -0600
@@ -52,8 +52,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/23_plv512.t perl-5.22.1/cpan/Config-Perl-V/t/23_plv512.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/23_plv512.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/23_plv512.t 2019-08-21 09:12:01.272379909 -0600
@@ -63,8 +63,8 @@
Linker and Libraries:
ld='/usr/bin/ld', ldflags ='-L/pro/local/lib +DD64 -L/usr/lib/hpux64'
libpth=/pro/local/lib /usr/lib/hpux64 /lib /usr/lib /usr/ccs/lib /usr/local/lib
- libs=-lcl -lpthread -lnsl -lnm -ldb -ldl -ldld -lm -lsec -lc
- perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
+ libs=-lcl -lpthread -lnm -ldb -ldl -ldld -lm -lsec -lc
+ perllibs=-lcl -lpthread -lnm -ldl -ldld -lm -lsec -lc
libc=/usr/lib/hpux64/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/24_plv514.t perl-5.22.1/cpan/Config-Perl-V/t/24_plv514.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/24_plv514.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/24_plv514.t 2019-08-21 09:12:01.272379909 -0600
@@ -64,8 +64,8 @@
Linker and Libraries:
ld='ld', ldflags ='-L/usr/local/ppc64/lib64 -b64 -q64 -L/pro/local/lib -brtl -bdynamic -b64'
libpth=/usr/local/ppc64/lib64 /lib /usr/lib /usr/ccs/lib /usr/local/lib /usr/lib64
- libs=-lbind -lnsl -ldbm -ldb -ldl -lld -lm -lcrypt -lc
- perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lc
+ libs=-lbind -ldbm -ldb -ldl -lld -lm -lcrypt -lc
+ perllibs=-lbind -ldl -lld -lm -lcrypt -lc
libc=/lib/libc.a, so=a, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/25_plv516.t perl-5.22.1/cpan/Config-Perl-V/t/25_plv516.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/25_plv516.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/25_plv516.t 2019-08-21 09:12:01.272379909 -0600
@@ -64,8 +64,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/26_plv5182.t perl-5.22.1/cpan/Config-Perl-V/t/26_plv5182.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/26_plv5182.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/26_plv5182.t 2019-08-21 09:12:01.272379909 -0600
@@ -89,8 +89,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/26_plv518.t perl-5.22.1/cpan/Config-Perl-V/t/26_plv518.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/26_plv518.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/26_plv518.t 2019-08-21 09:12:01.272379909 -0600
@@ -89,8 +89,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.17.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.17'
Dynamic Linking:
diff -ru perl-5.22.1.orig/cpan/Config-Perl-V/t/27_plv5200.t perl-5.22.1/cpan/Config-Perl-V/t/27_plv5200.t
--- perl-5.22.1.orig/cpan/Config-Perl-V/t/27_plv5200.t 2015-10-17 06:31:54.000000000 -0600
+++ perl-5.22.1/cpan/Config-Perl-V/t/27_plv5200.t 2019-08-21 09:12:01.272379909 -0600
@@ -91,8 +91,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff -ru perl-5.22.1.orig/Cross/config.sh-arm-linux perl-5.22.1/Cross/config.sh-arm-linux
--- perl-5.22.1.orig/Cross/config.sh-arm-linux 2015-10-18 11:26:26.000000000 -0600
+++ perl-5.22.1/Cross/config.sh-arm-linux 2019-08-21 09:12:19.907386879 -0600
@@ -838,12 +838,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.so'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -927,7 +927,7 @@
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff -ru perl-5.22.1.orig/Cross/config.sh-arm-linux-n770 perl-5.22.1/Cross/config.sh-arm-linux-n770
--- perl-5.22.1.orig/Cross/config.sh-arm-linux-n770 2015-10-18 11:26:52.000000000 -0600
+++ perl-5.22.1/Cross/config.sh-arm-linux-n770 2019-08-21 09:12:19.907386879 -0600
@@ -744,12 +744,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.arma'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -831,7 +831,7 @@
perl=''
perl_patchlevel=''
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff -ru perl-5.22.1.orig/hints/aix_4.sh perl-5.22.1/hints/aix_4.sh
--- perl-5.22.1.orig/hints/aix_4.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/aix_4.sh 2019-08-21 09:12:01.273379909 -0600
@@ -583,7 +583,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -591,7 +591,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ru perl-5.22.1.orig/hints/aix.sh perl-5.22.1/hints/aix.sh
--- perl-5.22.1.orig/hints/aix.sh 2015-10-17 06:38:37.000000000 -0600
+++ perl-5.22.1/hints/aix.sh 2019-08-21 09:12:01.273379909 -0600
@@ -504,7 +504,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -512,7 +512,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ru perl-5.22.1.orig/hints/epix.sh perl-5.22.1/hints/epix.sh
--- perl-5.22.1.orig/hints/epix.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/epix.sh 2019-08-21 09:12:01.273379909 -0600
@@ -37,7 +37,7 @@
# Old version had this, but I'm not sure why since the old version
# also mucked around with libswanted. This is also definitely wrong
# if the user is trying to use DB_File or GDBM_File.
-# libs='-lsocket -lnsl -ldbm -ldl -lc -lcrypt -lm -lucb'
+# libs='-lsocket -ldbm -ldl -lc -lcrypt -lm -lucb'
# We include support for using libraries in /usr/ucblib, but the setting
# of libswanted excludes some libraries found there. You may want to
diff -ru perl-5.22.1.orig/hints/gnu.sh perl-5.22.1/hints/gnu.sh
--- perl-5.22.1.orig/hints/gnu.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/gnu.sh 2019-08-21 09:12:01.273379909 -0600
@@ -4,7 +4,7 @@
# libnsl is unusable on the Hurd.
# XXX remove this once SUNRPC is implemented.
-set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ nsl / /' -e 's/ c / pthread /'`
+set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ c / pthread /'`
shift
libswanted="$*"
diff -ru perl-5.22.1.orig/hints/irix_5.sh perl-5.22.1/hints/irix_5.sh
--- perl-5.22.1.orig/hints/irix_5.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/irix_5.sh 2019-08-21 09:12:01.273379909 -0600
@@ -27,9 +27,9 @@
esac
lddlflags="-shared"
-# For some reason we don't want -lsocket -lnsl or -ldl. Can anyone
+# For some reason we don't want -lsocket or -ldl. Can anyone
# contribute an explanation?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
diff -ru perl-5.22.1.orig/hints/irix_6_0.sh perl-5.22.1/hints/irix_6_0.sh
--- perl-5.22.1.orig/hints/irix_6_0.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/irix_6_0.sh 2019-08-21 09:12:01.273379909 -0600
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ru perl-5.22.1.orig/hints/irix_6_1.sh perl-5.22.1/hints/irix_6_1.sh
--- perl-5.22.1.orig/hints/irix_6_1.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/irix_6_1.sh 2019-08-21 09:12:01.273379909 -0600
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ru perl-5.22.1.orig/hints/irix_6.sh perl-5.22.1/hints/irix_6.sh
--- perl-5.22.1.orig/hints/irix_6.sh 2015-10-18 06:40:25.000000000 -0600
+++ perl-5.22.1/hints/irix_6.sh 2019-08-21 09:12:01.273379909 -0600
@@ -388,7 +388,7 @@
# Socket networking is in libc, these are not installed by default,
# and just slow perl down. (scotth@sgi.com)
# librt contains nothing we need (some places need it for Time::HiRes) --jhi
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /' -e 's/ rt / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /' -e 's/ rt / /'`
shift
libswanted="$*"
diff -ru perl-5.22.1.orig/hints/powerux.sh perl-5.22.1/hints/powerux.sh
--- perl-5.22.1.orig/hints/powerux.sh 2015-10-17 06:32:14.000000000 -0600
+++ perl-5.22.1/hints/powerux.sh 2019-08-21 09:12:01.274379910 -0600
@@ -27,11 +27,11 @@
exit 2
fi
-# We DO NOT want -lmalloc or -lPW, we DO need -lgen to follow -lnsl, so
+# We DO NOT want -lmalloc or -lPW, we DO need -lgen to follow, so
# fixup libswanted to reflect that desire (also need -lresolv if you want
# DNS name lookup to work, which seems desirable :-).
#
-libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /' -e 's/ PW / /' -e 's/ nsl / nsl gen resolv /'`
+libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /' -e 's/ PW / /'`
# We DO NOT want /usr/ucblib in glibpth
#
diff -ru perl-5.22.1.orig/INSTALL perl-5.22.1/INSTALL
--- perl-5.22.1.orig/INSTALL 2015-10-18 11:46:25.000000000 -0600
+++ perl-5.22.1/INSTALL 2019-08-21 09:12:01.274379910 -0600
@@ -1617,7 +1617,7 @@
undefined symbols, check the libs variable in the config.sh file. It
should look something like
- libs='-lsocket -lnsl -ldl -lm -lc'
+ libs='-lsocket -ldl -lm -lc'
The exact libraries will vary from system to system, but you typically
need to include at least the math library -lm. Normally, Configure
diff -ru perl-5.22.1.orig/NetWare/config.wc perl-5.22.1/NetWare/config.wc
--- perl-5.22.1.orig/NetWare/config.wc 2015-10-17 06:38:37.000000000 -0600
+++ perl-5.22.1/NetWare/config.wc 2019-08-21 09:12:01.274379910 -0600
@@ -818,7 +818,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.22.1.orig/plan9/config_sh.sample perl-5.22.1/plan9/config_sh.sample
--- perl-5.22.1.orig/plan9/config_sh.sample 2015-10-18 11:39:19.000000000 -0600
+++ perl-5.22.1/plan9/config_sh.sample 2019-08-21 09:12:01.274379910 -0600
@@ -825,7 +825,7 @@
libsfiles=''
libsfound=''
libspath=' /lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
libswanted_uselargefiles=''
line=''
lint=''
diff -ru perl-5.22.1.orig/pod/perlrun.pod perl-5.22.1/pod/perlrun.pod
--- perl-5.22.1.orig/pod/perlrun.pod 2015-10-17 06:32:18.000000000 -0600
+++ perl-5.22.1/pod/perlrun.pod 2019-08-21 09:12:01.274379910 -0600
@@ -874,11 +874,11 @@
$ perl -V:libc
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.*
libpth='/usr/local/lib /lib /usr/lib';
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
lib_ext='.a';
libc='/lib/libc-2.2.4.so';
libperl='libperl.a';
diff -ru perl-5.22.1.orig/Porting/bisect-runner.pl perl-5.22.1/Porting/bisect-runner.pl
--- perl-5.22.1.orig/Porting/bisect-runner.pl 2015-10-17 06:38:37.000000000 -0600
+++ perl-5.22.1/Porting/bisect-runner.pl 2019-08-21 09:12:01.275379910 -0600
@@ -1269,7 +1269,7 @@
my @libs;
# This is the current libswanted list from Configure, less the libs removed
# by current hints/linux.sh
- foreach my $lib (qw(sfio socket inet nsl nm ndbm gdbm dbm db malloc dl
+ foreach my $lib (qw(sfio socket inet nm ndbm gdbm dbm db malloc dl
ld sun m crypt sec util c cposix posix ucb BSD)) {
foreach my $dir (@paths) {
# Note the wonderful consistency of dot-or-not in the config vars:
diff -ru perl-5.22.1.orig/Porting/config.sh perl-5.22.1/Porting/config.sh
--- perl-5.22.1.orig/Porting/config.sh 2015-10-18 11:34:00.000000000 -0600
+++ perl-5.22.1/Porting/config.sh 2019-08-21 09:12:19.908386879 -0600
@@ -856,12 +856,12 @@
libc='libc-2.18.so'
libperl='libperl.a'
libpth='/usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib'
-libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
+libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libgdbm.so /usr/lib/libdb.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so /usr/lib/libgdbm_compat.so'
+libsfiles=' libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
+libsfound=' /usr/lib/libgdbm.so /usr/lib/libdb.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so /usr/lib/libgdbm_compat.so'
libspath=' /usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib'
-libswanted='socket inet nsl nm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
+libswanted='socket inet nm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
libswanted_uselargefiles=''
line=''
lint=''
@@ -945,7 +945,7 @@
perl_patchlevel=''
perl_static_inline='static __inline__'
perladmin='hmbrand@cpan.org'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/pro/bin/perl5.22.1'
pg='pg'
phostname='hostname'
diff -ru perl-5.22.1.orig/win32/config.ce perl-5.22.1/win32/config.ce
--- perl-5.22.1.orig/win32/config.ce 2015-10-17 06:38:38.000000000 -0600
+++ perl-5.22.1/win32/config.ce 2019-08-21 09:12:01.275379910 -0600
@@ -810,7 +810,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.22.1.orig/win32/config.gc perl-5.22.1/win32/config.gc
--- perl-5.22.1.orig/win32/config.gc 2015-10-17 06:38:38.000000000 -0600
+++ perl-5.22.1/win32/config.gc 2019-08-21 09:12:01.275379910 -0600
@@ -836,8 +836,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff -ru perl-5.22.1.orig/win32/config.vc perl-5.22.1/win32/config.vc
--- perl-5.22.1.orig/win32/config.vc 2015-10-17 06:38:38.000000000 -0600
+++ perl-5.22.1/win32/config.vc 2019-08-21 09:12:01.275379910 -0600
@@ -835,8 +835,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''

View File

@@ -0,0 +1,518 @@
diff -ur perl-5.30.0.orig/Configure perl-5.30.0/Configure
--- perl-5.30.0.orig/Configure 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/Configure 2019-10-14 17:37:29.512567849 -0400
@@ -1487,7 +1487,7 @@
usereentrant='undef'
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="cl pthread socket bind inet nsl ndbm gdbm dbm db malloc dl ld"
+libswanted="cl pthread socket bind inet ndbm gdbm dbm db malloc dl ld"
libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
diff -ur perl-5.30.0.orig/configure.com perl-5.30.0/configure.com
--- perl-5.30.0.orig/configure.com 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/configure.com 2019-10-14 17:35:46.608063565 -0400
@@ -117,7 +117,7 @@
$!: machines, like the mips. Usually, it should be empty. !sfn
$!plibpth='' !sfn
$!: List of libraries we want. !sfn
-$!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn
+$!libswanted='net socket inet nm ndbm gdbm dbm db malloc dl' !sfn
$!libswanted="$libswanted ld sun m c cposix posix ndir dir crypt" !sfn
$!libswanted="$libswanted ucb bsd BSD PW x" !sfn
$!: We probably want to search /usr/shlib before most other libraries. !sfn
Only in perl-5.30.0/: configure.com.orig
Only in perl-5.30.0/: Configure.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/20_plv56.t perl-5.30.0/cpan/Config-Perl-V/t/20_plv56.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/20_plv56.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/20_plv56.t 2019-10-14 17:35:46.612063373 -0400
@@ -63,8 +63,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
- perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
+ libs=-lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
+ perllibs=-ldl -lm -lc -lcrypt -lutil
libc=/lib/libc-2.10.1.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
Only in perl-5.30.0/cpan/Config-Perl-V/t: 20_plv56.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/21_plv58.t perl-5.30.0/cpan/Config-Perl-V/t/21_plv58.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/21_plv58.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/21_plv58.t 2019-10-14 17:35:46.612063373 -0400
@@ -67,8 +67,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.11.2.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.11.2'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 21_plv58.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/22_plv510.t perl-5.30.0/cpan/Config-Perl-V/t/22_plv510.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/22_plv510.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/22_plv510.t 2019-10-14 17:35:46.612063373 -0400
@@ -57,8 +57,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 22_plv510.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/23_plv512.t perl-5.30.0/cpan/Config-Perl-V/t/23_plv512.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/23_plv512.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/23_plv512.t 2019-10-14 17:35:46.612063373 -0400
@@ -68,8 +68,8 @@
Linker and Libraries:
ld='/usr/bin/ld', ldflags ='-L/pro/local/lib +DD64 -L/usr/lib/hpux64'
libpth=/pro/local/lib /usr/lib/hpux64 /lib /usr/lib /usr/ccs/lib /usr/local/lib
- libs=-lcl -lpthread -lnsl -lnm -ldb -ldl -ldld -lm -lsec -lc
- perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
+ libs=-lcl -lpthread -lnm -ldb -ldl -ldld -lm -lsec -lc
+ perllibs=-lcl -lpthread -lnm -ldl -ldld -lm -lsec -lc
libc=/usr/lib/hpux64/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 23_plv512.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/24_plv514.t perl-5.30.0/cpan/Config-Perl-V/t/24_plv514.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/24_plv514.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/24_plv514.t 2019-10-14 17:35:46.612063373 -0400
@@ -69,8 +69,8 @@
Linker and Libraries:
ld='ld', ldflags ='-L/usr/local/ppc64/lib64 -b64 -q64 -L/pro/local/lib -brtl -bdynamic -b64'
libpth=/usr/local/ppc64/lib64 /lib /usr/lib /usr/ccs/lib /usr/local/lib /usr/lib64
- libs=-lbind -lnsl -ldbm -ldb -ldl -lld -lm -lcrypt -lc
- perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lc
+ libs=-lbind -ldbm -ldb -ldl -lld -lm -lcrypt -lc
+ perllibs=-lbind -ldl -lld -lm -lcrypt -lc
libc=/lib/libc.a, so=a, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 24_plv514.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/25_plv516.t perl-5.30.0/cpan/Config-Perl-V/t/25_plv516.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/25_plv516.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/25_plv516.t 2019-10-14 17:35:46.612063373 -0400
@@ -69,8 +69,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 25_plv516.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/26_plv5182.t perl-5.30.0/cpan/Config-Perl-V/t/26_plv5182.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/26_plv5182.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/26_plv5182.t 2019-10-14 17:35:46.612063373 -0400
@@ -94,8 +94,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 26_plv5182.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/26_plv518.t perl-5.30.0/cpan/Config-Perl-V/t/26_plv518.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/26_plv518.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/26_plv518.t 2019-10-14 17:35:46.616063181 -0400
@@ -94,8 +94,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.17.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.17'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 26_plv518.t.orig
diff -ur perl-5.30.0.orig/cpan/Config-Perl-V/t/27_plv5200.t perl-5.30.0/cpan/Config-Perl-V/t/27_plv5200.t
--- perl-5.30.0.orig/cpan/Config-Perl-V/t/27_plv5200.t 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/cpan/Config-Perl-V/t/27_plv5200.t 2019-10-14 17:35:46.620062988 -0400
@@ -96,8 +96,8 @@
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
Only in perl-5.30.0/cpan/Config-Perl-V/t: 27_plv5200.t.orig
diff -ur perl-5.30.0.orig/Cross/config.sh-arm-linux perl-5.30.0/Cross/config.sh-arm-linux
--- perl-5.30.0.orig/Cross/config.sh-arm-linux 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/Cross/config.sh-arm-linux 2019-10-14 17:35:46.620062988 -0400
@@ -866,12 +866,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.so'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -959,7 +959,7 @@
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff -ur perl-5.30.0.orig/Cross/config.sh-arm-linux-n770 perl-5.30.0/Cross/config.sh-arm-linux-n770
--- perl-5.30.0.orig/Cross/config.sh-arm-linux-n770 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/Cross/config.sh-arm-linux-n770 2019-10-14 17:35:46.620062988 -0400
@@ -864,12 +864,12 @@
libc='/lib/libc-2.2.2.so'
libperl='libperl.arma'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -957,7 +957,7 @@
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
Only in perl-5.30.0/Cross: config.sh-arm-linux-n770.orig
Only in perl-5.30.0/Cross: config.sh-arm-linux.orig
diff -ur perl-5.30.0.orig/hints/aix_4.sh perl-5.30.0/hints/aix_4.sh
--- perl-5.30.0.orig/hints/aix_4.sh 2018-06-27 07:17:56.000000000 -0400
+++ perl-5.30.0/hints/aix_4.sh 2019-10-14 17:35:46.620062988 -0400
@@ -583,7 +583,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -591,7 +591,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ur perl-5.30.0.orig/hints/aix.sh perl-5.30.0/hints/aix.sh
--- perl-5.30.0.orig/hints/aix.sh 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/hints/aix.sh 2019-10-14 17:35:46.620062988 -0400
@@ -504,7 +504,7 @@
***
*** You seem to be compiling in AIX for the OS/400 PASE environment.
-*** I'm not going to use the AIX bind, nsl, and possible util libraries, then.
+*** I'm not going to use the AIX bind, and possible util libraries, then.
*** I'm also not going to install perl as /usr/bin/perl.
*** Perl will be installed under $prefix.
*** For instructions how to install this build from AIX to PASE,
@@ -512,7 +512,7 @@
*** about "Operating system name".
***
EOF
- set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ nsl @ @' -e 's@ util @ @'`
+ set `echo " $libswanted " | sed -e 's@ bind @ @' -e 's@ util @ @'`
shift
libswanted="$*"
installusrbinperl="$undef"
diff -ur perl-5.30.0.orig/hints/epix.sh perl-5.30.0/hints/epix.sh
--- perl-5.30.0.orig/hints/epix.sh 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/hints/epix.sh 2019-10-14 17:35:46.620062988 -0400
@@ -37,7 +37,7 @@
# Old version had this, but I'm not sure why since the old version
# also mucked around with libswanted. This is also definitely wrong
# if the user is trying to use DB_File or GDBM_File.
-# libs='-lsocket -lnsl -ldbm -ldl -lc -lcrypt -lm -lucb'
+# libs='-lsocket -ldbm -ldl -lc -lcrypt -lm -lucb'
# We include support for using libraries in /usr/ucblib, but the setting
# of libswanted excludes some libraries found there. You may want to
diff -ur perl-5.30.0.orig/hints/gnu.sh perl-5.30.0/hints/gnu.sh
--- perl-5.30.0.orig/hints/gnu.sh 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/hints/gnu.sh 2019-10-14 17:35:46.620062988 -0400
@@ -3,7 +3,7 @@
# libnsl is unusable on the Hurd.
# XXX remove this once SUNRPC is implemented.
-set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ nsl / /' -e 's/ c / pthread /'`
+set `echo X "$libswanted "| sed -e 's/ bsd / /' -e 's/ c / pthread /'`
shift
libswanted="$*"
Only in perl-5.30.0/hints: gnu.sh.orig
diff -ur perl-5.30.0.orig/hints/irix_5.sh perl-5.30.0/hints/irix_5.sh
--- perl-5.30.0.orig/hints/irix_5.sh 2018-06-27 07:17:56.000000000 -0400
+++ perl-5.30.0/hints/irix_5.sh 2019-10-14 17:35:46.624062797 -0400
@@ -27,9 +27,9 @@
esac
lddlflags="-shared"
-# For some reason we don't want -lsocket -lnsl or -ldl. Can anyone
+# For some reason we don't want -lsocket or -ldl. Can anyone
# contribute an explanation?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
diff -ur perl-5.30.0.orig/hints/irix_6_0.sh perl-5.30.0/hints/irix_6_0.sh
--- perl-5.30.0.orig/hints/irix_6_0.sh 2018-06-27 07:17:56.000000000 -0400
+++ perl-5.30.0/hints/irix_6_0.sh 2019-10-14 17:35:46.624062797 -0400
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ur perl-5.30.0.orig/hints/irix_6_1.sh perl-5.30.0/hints/irix_6_1.sh
--- perl-5.30.0.orig/hints/irix_6_1.sh 2018-06-27 07:17:56.000000000 -0400
+++ perl-5.30.0/hints/irix_6_1.sh 2019-10-14 17:35:46.624062797 -0400
@@ -19,7 +19,7 @@
lddlflags="-32 -shared"
# We don't want these libraries. Anyone know why?
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /'`
shift
libswanted="$*"
#
@@ -29,7 +29,7 @@
# taken from irix_5.sh . Changes from irix_5.sh:
# Olimit and nested comments (warning 1009) no longer accepted
# -OPT:fold_arith_limit so POSIX module will optimize
-# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# no 64bit versions of sun, crypt, socket, dl dso's available
# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
# perl 5 built with this hints file passes most tests (`make test').
@@ -38,7 +38,7 @@
# i_time='define'
# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
# lddlflags="-shared"
-# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ dl / /'`
# shift
# libswanted="$*"
diff -ur perl-5.30.0.orig/hints/irix_6.sh perl-5.30.0/hints/irix_6.sh
--- perl-5.30.0.orig/hints/irix_6.sh 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/hints/irix_6.sh 2019-10-14 17:35:46.624062797 -0400
@@ -388,7 +388,7 @@
# Socket networking is in libc, these are not installed by default,
# and just slow perl down. (scotth@sgi.com)
# librt contains nothing we need (some places need it for Time::HiRes) --jhi
-set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /' -e 's/ rt / /'`
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ dl / /' -e 's/ rt / /'`
shift
libswanted="$*"
diff -ur perl-5.30.0.orig/INSTALL perl-5.30.0/INSTALL
--- perl-5.30.0.orig/INSTALL 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/INSTALL 2019-10-14 17:36:13.034898813 -0400
@@ -1623,7 +1623,7 @@
undefined symbols, check the libs variable in the config.sh file. It
should look something like
- libs='-lsocket -lnsl -ldl -lm -lc'
+ libs='-lsocket -ldl -lm -lc'
The exact libraries will vary from system to system, but you typically
need to include at least the math library -lm. Normally, Configure
Only in perl-5.30.0/: INSTALL.orig
diff -ur perl-5.30.0.orig/NetWare/config.wc perl-5.30.0/NetWare/config.wc
--- perl-5.30.0.orig/NetWare/config.wc 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/NetWare/config.wc 2019-10-14 17:36:13.034898813 -0400
@@ -846,7 +846,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
Only in perl-5.30.0/NetWare: config.wc.orig
diff -ur perl-5.30.0.orig/plan9/config_sh.sample perl-5.30.0/plan9/config_sh.sample
--- perl-5.30.0.orig/plan9/config_sh.sample 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/plan9/config_sh.sample 2019-10-14 17:36:13.038898652 -0400
@@ -853,7 +853,7 @@
libsfiles=''
libsfound=''
libspath=' /lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
libswanted_uselargefiles=''
line=''
lint=''
Only in perl-5.30.0/plan9: config_sh.sample.orig
diff -ur perl-5.30.0.orig/pod/perlrun.pod perl-5.30.0/pod/perlrun.pod
--- perl-5.30.0.orig/pod/perlrun.pod 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/pod/perlrun.pod 2019-10-14 17:36:13.038898652 -0400
@@ -887,11 +887,11 @@
$ perl -V:libc
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.*
libpth='/usr/local/lib /lib /usr/lib';
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
lib_ext='.a';
libc='/lib/libc-2.2.4.so';
libperl='libperl.a';
Only in perl-5.30.0/pod: perlrun.pod.orig
diff -ur perl-5.30.0.orig/Porting/bisect-runner.pl perl-5.30.0/Porting/bisect-runner.pl
--- perl-5.30.0.orig/Porting/bisect-runner.pl 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/Porting/bisect-runner.pl 2019-10-14 17:36:13.038898652 -0400
@@ -1384,7 +1384,7 @@
my @libs;
# This is the current libswanted list from Configure, less the libs removed
# by current hints/linux.sh
- foreach my $lib (qw(sfio socket inet nsl nm ndbm gdbm dbm db malloc dl
+ foreach my $lib (qw(sfio socket inet nm ndbm gdbm dbm db malloc dl
ld sun m crypt sec util c cposix posix ucb BSD)) {
foreach my $dir (@paths) {
# Note the wonderful consistency of dot-or-not in the config vars:
Only in perl-5.30.0/Porting: bisect-runner.pl.orig
diff -ur perl-5.30.0.orig/Porting/config.sh perl-5.30.0/Porting/config.sh
--- perl-5.30.0.orig/Porting/config.sh 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/Porting/config.sh 2019-10-14 17:38:20.815713492 -0400
@@ -891,12 +891,12 @@
libc='libc-2.19.so'
libperl='libperl.a'
libpth='/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib'
-libs='-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
+libs='-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
libsdirs=' /usr/lib/x86_64-linux-gnu'
-libsfiles=' libpthread.so libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
-libsfound=' /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/x86_64-linux-gnu/libnsl.so /usr/lib/x86_64-linux-gnu/libgdbm.so /usr/lib/x86_64-linux-gnu/libdb.so /usr/lib/x86_64-linux-gnu/libdl.so /usr/lib/x86_64-linux-gnu/libm.so /usr/lib/x86_64-linux-gnu/libcrypt.so /usr/lib/x86_64-linux-gnu/libutil.so /usr/lib/x86_64-linux-gnu/libc.so /usr/lib/x86_64-linux-gnu/libgdbm_compat.so'
+libsfiles=' libpthread.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
+libsfound=' /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/x86_64-linux-gnu/libgdbm.so /usr/lib/x86_64-linux-gnu/libdb.so /usr/lib/x86_64-linux-gnu/libdl.so /usr/lib/x86_64-linux-gnu/libm.so /usr/lib/x86_64-linux-gnu/libcrypt.so /usr/lib/x86_64-linux-gnu/libutil.so /usr/lib/x86_64-linux-gnu/libc.so /usr/lib/x86_64-linux-gnu/libgdbm_compat.so'
libspath=' /usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib'
-libswanted='cl pthread cl pthread socket inet nsl gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
+libswanted='cl pthread cl pthread socket inet gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
libswanted_uselargefiles=''
line=''
lint=''
@@ -983,7 +983,7 @@
perl_patchlevel=''
perl_static_inline='static __inline__'
perladmin='yourname@yourhost.yourplace.com'
-perllibs='-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-lpthread -ldl -lm -lcrypt -lutil -lc'
perlpath='/opt/perl/bin/perl5.30.0'
pg='pg'
phostname=''
Only in perl-5.30.0/Porting: config.sh.orig
diff -ur perl-5.30.0.orig/win32/config.ce perl-5.30.0/win32/config.ce
--- perl-5.30.0.orig/win32/config.ce 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/win32/config.ce 2019-10-14 17:36:13.090896568 -0400
@@ -839,7 +839,7 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
Only in perl-5.30.0/win32: config.ce.orig
diff -ur perl-5.30.0.orig/win32/config.gc perl-5.30.0/win32/config.gc
--- perl-5.30.0.orig/win32/config.gc 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/win32/config.gc 2019-10-14 17:36:13.090896568 -0400
@@ -865,8 +865,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
Only in perl-5.30.0/win32: config.gc.orig
diff -ur perl-5.30.0.orig/win32/config.vc perl-5.30.0/win32/config.vc
--- perl-5.30.0.orig/win32/config.vc 2019-05-11 05:50:20.000000000 -0400
+++ perl-5.30.0/win32/config.vc 2019-10-14 17:36:13.094896407 -0400
@@ -864,8 +864,8 @@
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
Only in perl-5.30.0/win32: config.vc.orig

View File

@@ -0,0 +1,456 @@
diff --git a/Configure b/Configure
index fbc2258..14d9eba 100755
--- a/Configure
+++ b/Configure
@@ -1491,7 +1491,7 @@ archname=''
usereentrant='undef'
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="cl pthread socket bind inet nsl ndbm gdbm dbm db malloc dl ld"
+libswanted="cl pthread socket bind inet ndbm gdbm dbm db malloc dl ld"
libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux
index d97a698..0eec85e 100644
--- a/Cross/config.sh-arm-linux
+++ b/Cross/config.sh-arm-linux
@@ -869,12 +869,12 @@ lib_ext='.a'
libc='/lib/libc-2.2.2.so'
libperl='libperl.so'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -962,7 +962,7 @@ perl=''
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff --git a/Cross/config.sh-arm-linux-n770 b/Cross/config.sh-arm-linux-n770
index 3ad709f..b3752bb 100644
--- a/Cross/config.sh-arm-linux-n770
+++ b/Cross/config.sh-arm-linux-n770
@@ -867,12 +867,12 @@ lib_ext='.arma'
libc='/lib/libc-2.2.2.so'
libperl='libperl.arma'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -960,7 +960,7 @@ perl=''
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff --git a/INSTALL b/INSTALL
index 76edeec..6a039a2 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1629,7 +1629,7 @@ If the build of miniperl fails with a long list of missing functions or
undefined symbols, check the libs variable in the config.sh file. It
should look something like
- libs='-lsocket -lnsl -ldl -lm -lc'
+ libs='-lsocket -ldl -lm -lc'
The exact libraries will vary from system to system, but you typically
need to include at least the math library -lm. Normally, Configure
diff --git a/NetWare/config.wc b/NetWare/config.wc
index b0a02f5..f699a65 100644
--- a/NetWare/config.wc
+++ b/NetWare/config.wc
@@ -849,7 +849,7 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff --git a/Porting/bisect-runner.pl b/Porting/bisect-runner.pl
index b6c75a9..33de0c0 100755
--- a/Porting/bisect-runner.pl
+++ b/Porting/bisect-runner.pl
@@ -1550,7 +1550,7 @@ unless (extract_from_file('Configure', 'ignore_versioned_solibs')) {
my @libs;
# This is the current libswanted list from Configure, less the libs removed
# by current hints/linux.sh
- foreach my $lib (qw(sfio socket inet nsl nm ndbm gdbm dbm db malloc dl
+ foreach my $lib (qw(sfio socket inet nm ndbm gdbm dbm db malloc dl
ld sun m crypt sec util c cposix posix ucb BSD)) {
foreach my $dir (@paths) {
# Note the wonderful consistency of dot-or-not in the config vars:
diff --git a/Porting/config.sh b/Porting/config.sh
index 2d2287c..c8fab58 100644
--- a/Porting/config.sh
+++ b/Porting/config.sh
@@ -894,12 +894,12 @@ lib_ext='.a'
libc='libc-2.19.so'
libperl='libperl.a'
libpth='/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib'
-libs='-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
+libs='-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
libsdirs=' /usr/lib/x86_64-linux-gnu'
-libsfiles=' libpthread.so libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
-libsfound=' /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/x86_64-linux-gnu/libnsl.so /usr/lib/x86_64-linux-gnu/libgdbm.so /usr/lib/x86_64-linux-gnu/libdb.so /usr/lib/x86_64-linux-gnu/libdl.so /usr/lib/x86_64-linux-gnu/libm.so /usr/lib/x86_64-linux-gnu/libcrypt.so /usr/lib/x86_64-linux-gnu/libutil.so /usr/lib/x86_64-linux-gnu/libc.so /usr/lib/x86_64-linux-gnu/libgdbm_compat.so'
+libsfiles=' libpthread.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
+libsfound=' /usr/lib/x86_64-linux-gnu/libpthread.so /usr/lib/x86_64-linux-gnu/libgdbm.so /usr/lib/x86_64-linux-gnu/libdb.so /usr/lib/x86_64-linux-gnu/libdl.so /usr/lib/x86_64-linux-gnu/libm.so /usr/lib/x86_64-linux-gnu/libcrypt.so /usr/lib/x86_64-linux-gnu/libutil.so /usr/lib/x86_64-linux-gnu/libc.so /usr/lib/x86_64-linux-gnu/libgdbm_compat.so'
libspath=' /usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib'
-libswanted='cl pthread cl pthread socket inet nsl gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
+libswanted='cl pthread cl pthread socket inet gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
libswanted_uselargefiles=''
line=''
lint=''
@@ -986,7 +986,7 @@ perl='perl'
perl_patchlevel=''
perl_static_inline='static __inline__'
perladmin='yourname@yourhost.yourplace.com'
-perllibs='-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-lpthread -ldl -lm -lcrypt -lutil -lc'
perlpath='/opt/perl/bin/perl5.32.1'
pg='pg'
phostname=''
diff --git a/configure.com b/configure.com
index 713e875..6273d5d 100644
--- a/configure.com
+++ b/configure.com
@@ -117,7 +117,7 @@ $!: is prepended to libpth. This variable takes care of special !sfn
$!: machines, like the mips. Usually, it should be empty. !sfn
$!plibpth='' !sfn
$!: List of libraries we want. !sfn
-$!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn
+$!libswanted='net socket inet nm ndbm gdbm dbm db malloc dl' !sfn
$!libswanted="$libswanted ld sun m c cposix posix ndir dir crypt" !sfn
$!libswanted="$libswanted ucb bsd BSD PW x" !sfn
$!: We probably want to search /usr/shlib before most other libraries. !sfn
diff --git a/cpan/Config-Perl-V/t/20_plv56.t b/cpan/Config-Perl-V/t/20_plv56.t
index 252a162..5004c9a 100644
--- a/cpan/Config-Perl-V/t/20_plv56.t
+++ b/cpan/Config-Perl-V/t/20_plv56.t
@@ -63,8 +63,8 @@ Summary of my perl5 (revision 5.0 version 6 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
- perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
+ libs=-lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
+ perllibs=-ldl -lm -lc -lcrypt -lutil
libc=/lib/libc-2.10.1.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
diff --git a/cpan/Config-Perl-V/t/21_plv58.t b/cpan/Config-Perl-V/t/21_plv58.t
index b354e24..d747355 100644
--- a/cpan/Config-Perl-V/t/21_plv58.t
+++ b/cpan/Config-Perl-V/t/21_plv58.t
@@ -67,8 +67,8 @@ Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.11.2.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.11.2'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/22_plv510.t b/cpan/Config-Perl-V/t/22_plv510.t
index bec688c..4641d12 100644
--- a/cpan/Config-Perl-V/t/22_plv510.t
+++ b/cpan/Config-Perl-V/t/22_plv510.t
@@ -57,8 +57,8 @@ Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/23_plv512.t b/cpan/Config-Perl-V/t/23_plv512.t
index 03c69cb..47d7f97 100644
--- a/cpan/Config-Perl-V/t/23_plv512.t
+++ b/cpan/Config-Perl-V/t/23_plv512.t
@@ -68,8 +68,8 @@ Summary of my perl5 (revision 5 version 12 subversion 2) configuration:
Linker and Libraries:
ld='/usr/bin/ld', ldflags ='-L/pro/local/lib +DD64 -L/usr/lib/hpux64'
libpth=/pro/local/lib /usr/lib/hpux64 /lib /usr/lib /usr/ccs/lib /usr/local/lib
- libs=-lcl -lpthread -lnsl -lnm -ldb -ldl -ldld -lm -lsec -lc
- perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
+ libs=-lcl -lpthread -lnm -ldb -ldl -ldld -lm -lsec -lc
+ perllibs=-lcl -lpthread -lnm -ldl -ldld -lm -lsec -lc
libc=/usr/lib/hpux64/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/24_plv514.t b/cpan/Config-Perl-V/t/24_plv514.t
index 3377b41..fdd8046 100644
--- a/cpan/Config-Perl-V/t/24_plv514.t
+++ b/cpan/Config-Perl-V/t/24_plv514.t
@@ -69,8 +69,8 @@ Summary of my perl5 (revision 5 version 14 subversion 2) configuration:
Linker and Libraries:
ld='ld', ldflags ='-L/usr/local/ppc64/lib64 -b64 -q64 -L/pro/local/lib -brtl -bdynamic -b64'
libpth=/usr/local/ppc64/lib64 /lib /usr/lib /usr/ccs/lib /usr/local/lib /usr/lib64
- libs=-lbind -lnsl -ldbm -ldb -ldl -lld -lm -lcrypt -lc
- perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lc
+ libs=-lbind -ldbm -ldb -ldl -lld -lm -lcrypt -lc
+ perllibs=-lbind -ldl -lld -lm -lcrypt -lc
libc=/lib/libc.a, so=a, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/25_plv516.t b/cpan/Config-Perl-V/t/25_plv516.t
index 5505245..5bad2ce 100644
--- a/cpan/Config-Perl-V/t/25_plv516.t
+++ b/cpan/Config-Perl-V/t/25_plv516.t
@@ -69,8 +69,8 @@ Summary of my perl5 (revision 5 version 16 subversion 3) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/26_plv518.t b/cpan/Config-Perl-V/t/26_plv518.t
index a255797..d3ab0b6 100644
--- a/cpan/Config-Perl-V/t/26_plv518.t
+++ b/cpan/Config-Perl-V/t/26_plv518.t
@@ -94,8 +94,8 @@ Summary of my perl5 (revision 5 version 18 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.17.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.17'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/26_plv5182.t b/cpan/Config-Perl-V/t/26_plv5182.t
index 25e52bb..fc24cd1 100644
--- a/cpan/Config-Perl-V/t/26_plv5182.t
+++ b/cpan/Config-Perl-V/t/26_plv5182.t
@@ -94,8 +94,8 @@ Summary of my perl5 (revision 5 version 18 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/27_plv5200.t b/cpan/Config-Perl-V/t/27_plv5200.t
index f44273d..ca84b18 100644
--- a/cpan/Config-Perl-V/t/27_plv5200.t
+++ b/cpan/Config-Perl-V/t/27_plv5200.t
@@ -96,8 +96,8 @@ Summary of my perl5 (revision 5 version 20 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/27_plv5202.t b/cpan/Config-Perl-V/t/27_plv5202.t
index 83c3cb0..13b58a2 100644
--- a/cpan/Config-Perl-V/t/27_plv5202.t
+++ b/cpan/Config-Perl-V/t/27_plv5202.t
@@ -97,8 +97,8 @@ Summary of my perl5 (revision 5 version 20 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.19.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.19'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/28_plv5220.t b/cpan/Config-Perl-V/t/28_plv5220.t
index 885445b..26506c3 100644
--- a/cpan/Config-Perl-V/t/28_plv5220.t
+++ b/cpan/Config-Perl-V/t/28_plv5220.t
@@ -97,8 +97,8 @@ Summary of my perl5 (revision 5 version 22 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.19.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.19'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/30_plv5240.t b/cpan/Config-Perl-V/t/30_plv5240.t
index 2d6c0fd..c4a8e13 100644
--- a/cpan/Config-Perl-V/t/30_plv5240.t
+++ b/cpan/Config-Perl-V/t/30_plv5240.t
@@ -102,8 +102,8 @@ Summary of my perl5 (revision 5 version 24 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/5/include-fixed /usr/lib64/gcc/x86_64-suse-linux/5/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.23.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.23'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/31_plv52511.t b/cpan/Config-Perl-V/t/31_plv52511.t
index a5b39ca..bcceca7 100644
--- a/cpan/Config-Perl-V/t/31_plv52511.t
+++ b/cpan/Config-Perl-V/t/31_plv52511.t
@@ -131,8 +131,8 @@ Summary of my perl5 (revision 5 version 25 subversion 11) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/6/include-fixed /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.24.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/32_plv5261rc1.t b/cpan/Config-Perl-V/t/32_plv5261rc1.t
index 9db16b2..57b1e11 100644
--- a/cpan/Config-Perl-V/t/32_plv5261rc1.t
+++ b/cpan/Config-Perl-V/t/32_plv5261rc1.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 26 subversion 1) configuration:
ld='ccache cc'
ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.19.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/33_plv52711r.t b/cpan/Config-Perl-V/t/33_plv52711r.t
index c6940d2..d7f2147 100644
--- a/cpan/Config-Perl-V/t/33_plv52711r.t
+++ b/cpan/Config-Perl-V/t/33_plv52711r.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 27 subversion 11) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.27.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/34_plv5280.t b/cpan/Config-Perl-V/t/34_plv5280.t
index f6c38df..47a1e0e 100644
--- a/cpan/Config-Perl-V/t/34_plv5280.t
+++ b/cpan/Config-Perl-V/t/34_plv5280.t
@@ -129,8 +129,8 @@ Summary of my perl5 (revision 5 version 28 subversion 0) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.27.so
so=so
useshrplib=false
diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample
index cd494c4..cf0d41b 100644
--- a/plan9/config_sh.sample
+++ b/plan9/config_sh.sample
@@ -856,7 +856,7 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=' /lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
libswanted_uselargefiles=''
line=''
lint=''
diff --git a/pod/perlrun.pod b/pod/perlrun.pod
index 89a7aa8..f92a2a5 100644
--- a/pod/perlrun.pod
+++ b/pod/perlrun.pod
@@ -895,11 +895,11 @@ non-letters). For example:
$ perl -V:libc
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.*
libpth='/usr/local/lib /lib /usr/lib';
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
lib_ext='.a';
libc='/lib/libc-2.2.4.so';
libperl='libperl.a';
diff --git a/win32/config.gc b/win32/config.gc
index 793b455..bb6ea3f 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -868,8 +868,8 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff --git a/win32/config.vc b/win32/config.vc
index a2c3f5a..f223095 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -867,8 +867,8 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''

View File

@@ -0,0 +1,516 @@
diff --git a/Configure b/Configure
index 913e080..a015175 100755
--- a/Configure
+++ b/Configure
@@ -1493,7 +1493,7 @@ archname=''
usereentrant='undef'
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="cl pthread socket bind inet nsl ndbm gdbm dbm db malloc dl ld"
+libswanted="cl pthread socket bind inet ndbm gdbm dbm db malloc dl ld"
libswanted="$libswanted sun m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux
index 33bab37..910e834 100644
--- a/Cross/config.sh-arm-linux
+++ b/Cross/config.sh-arm-linux
@@ -870,12 +870,12 @@ lib_ext='.a'
libc='/lib/libc-2.2.2.so'
libperl='libperl.so'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -963,7 +963,7 @@ perl=''
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff --git a/Cross/config.sh-arm-linux-n770 b/Cross/config.sh-arm-linux-n770
index 73567fb..08288ce 100644
--- a/Cross/config.sh-arm-linux-n770
+++ b/Cross/config.sh-arm-linux-n770
@@ -868,12 +868,12 @@ lib_ext='.arma'
libc='/lib/libc-2.2.2.so'
libperl='libperl.arma'
libpth='/usr/local/lib /lib /usr/lib'
-libs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+libs='-ldl -lm -lcrypt -lutil -lc'
libsdirs=' /usr/lib'
-libsfiles=' libnsl.so libdl.so libm.so libcrypt.so libutil.so libc.so'
-libsfound=' /usr/lib/libnsl.so /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
+libsfiles=' libdl.so libm.so libcrypt.so libutil.so libc.so'
+libsfound=' /usr/lib/libdl.so /usr/lib/libm.so /usr/lib/libcrypt.so /usr/lib/libutil.so /usr/lib/libc.so'
libspath=' /usr/local/lib /lib /usr/lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD'
libswanted_uselargefiles=''
line=''
lint=''
@@ -961,7 +961,7 @@ perl=''
perl_patchlevel=''
perl_static_inline='static'
perladmin='red@criticalintegration.com'
-perllibs='-lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-ldl -lm -lcrypt -lutil -lc'
perlpath='/usr/bin/perl'
pg='pg'
phostname='hostname'
diff --git a/INSTALL b/INSTALL
index ce5ad45..da89b58 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1653,7 +1653,7 @@ If the build of miniperl fails with a long list of missing functions or
undefined symbols, check the libs variable in the config.sh file. It
should look something like
- libs='-lsocket -lnsl -ldl -lm -lc'
+ libs='-lsocket -ldl -lm -lc'
The exact libraries will vary from system to system, but you typically
need to include at least the math library -lm. Normally, Configure
diff --git a/NetWare/config.wc b/NetWare/config.wc
index 26c1755..5fd4985 100644
--- a/NetWare/config.wc
+++ b/NetWare/config.wc
@@ -850,7 +850,7 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff --git a/Porting/bisect-runner.pl b/Porting/bisect-runner.pl
index b6c75a9..33de0c0 100755
--- a/Porting/bisect-runner.pl
+++ b/Porting/bisect-runner.pl
@@ -1550,7 +1550,7 @@ unless (extract_from_file('Configure', 'ignore_versioned_solibs')) {
my @libs;
# This is the current libswanted list from Configure, less the libs removed
# by current hints/linux.sh
- foreach my $lib (qw(sfio socket inet nsl nm ndbm gdbm dbm db malloc dl
+ foreach my $lib (qw(sfio socket inet nm ndbm gdbm dbm db malloc dl
ld sun m crypt sec util c cposix posix ucb BSD)) {
foreach my $dir (@paths) {
# Note the wonderful consistency of dot-or-not in the config vars:
diff --git a/Porting/config.sh b/Porting/config.sh
index d1f54f2..f126291 100644
--- a/Porting/config.sh
+++ b/Porting/config.sh
@@ -900,12 +900,12 @@ lib_ext='.a'
libc='libc-2.31.so'
libperl='libperl.a'
libpth='/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/10/include-fixed /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64'
-libs='-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
+libs='-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat'
libsdirs=' /usr/lib/../lib64'
-libsfiles=' libpthread.so libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
-libsfound=' /usr/lib/../lib64/libpthread.so /usr/lib/../lib64/libnsl.so /usr/lib/../lib64/libgdbm.so /usr/lib/../lib64/libdb.so /usr/lib/../lib64/libdl.so /usr/lib/../lib64/libm.so /usr/lib/../lib64/libcrypt.so /usr/lib/../lib64/libutil.so /usr/lib/../lib64/libc.so /usr/lib/../lib64/libgdbm_compat.so'
+libsfiles=' libpthread.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libc.so libgdbm_compat.so'
+libsfound=' /usr/lib/../lib64/libpthread.so /usr/lib/../lib64/libgdbm.so /usr/lib/../lib64/libdb.so /usr/lib/../lib64/libdl.so /usr/lib/../lib64/libm.so /usr/lib/../lib64/libcrypt.so /usr/lib/../lib64/libutil.so /usr/lib/../lib64/libc.so /usr/lib/../lib64/libgdbm_compat.so'
libspath=' /usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/10/include-fixed /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64'
-libswanted='cl pthread cl pthread socket inet nsl gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
+libswanted='cl pthread cl pthread socket inet gdbm dbm db malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat'
libswanted_uselargefiles=''
line=''
lint=''
@@ -992,7 +992,7 @@ perl='perl'
perl_patchlevel=''
perl_static_inline='static __inline__'
perladmin='yourname@yourhost.yourplace.com'
-perllibs='-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc'
+perllibs='-lpthread -ldl -lm -lcrypt -lutil -lc'
perlpath='/opt/perl/bin/perl5.34.0'
pg='pg'
phostname=''
diff --git a/configure.com b/configure.com
index df29582..0171264 100644
--- a/configure.com
+++ b/configure.com
@@ -117,7 +117,7 @@ $!: is prepended to libpth. This variable takes care of special !sfn
$!: machines, like the mips. Usually, it should be empty. !sfn
$!plibpth='' !sfn
$!: List of libraries we want. !sfn
-$!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn
+$!libswanted='net socket inet nm ndbm gdbm dbm db malloc dl' !sfn
$!libswanted="$libswanted ld sun m c cposix posix ndir dir crypt" !sfn
$!libswanted="$libswanted ucb bsd BSD PW x" !sfn
$!: We probably want to search /usr/shlib before most other libraries. !sfn
diff --git a/cpan/Config-Perl-V/t/20_plv56.t b/cpan/Config-Perl-V/t/20_plv56.t
index 252a162..5004c9a 100644
--- a/cpan/Config-Perl-V/t/20_plv56.t
+++ b/cpan/Config-Perl-V/t/20_plv56.t
@@ -63,8 +63,8 @@ Summary of my perl5 (revision 5.0 version 6 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
- perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
+ libs=-lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
+ perllibs=-ldl -lm -lc -lcrypt -lutil
libc=/lib/libc-2.10.1.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
diff --git a/cpan/Config-Perl-V/t/21_plv58.t b/cpan/Config-Perl-V/t/21_plv58.t
index b354e24..d747355 100644
--- a/cpan/Config-Perl-V/t/21_plv58.t
+++ b/cpan/Config-Perl-V/t/21_plv58.t
@@ -67,8 +67,8 @@ Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.11.2.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.11.2'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/22_plv510.t b/cpan/Config-Perl-V/t/22_plv510.t
index bec688c..4641d12 100644
--- a/cpan/Config-Perl-V/t/22_plv510.t
+++ b/cpan/Config-Perl-V/t/22_plv510.t
@@ -57,8 +57,8 @@ Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/23_plv512.t b/cpan/Config-Perl-V/t/23_plv512.t
index 03c69cb..47d7f97 100644
--- a/cpan/Config-Perl-V/t/23_plv512.t
+++ b/cpan/Config-Perl-V/t/23_plv512.t
@@ -68,8 +68,8 @@ Summary of my perl5 (revision 5 version 12 subversion 2) configuration:
Linker and Libraries:
ld='/usr/bin/ld', ldflags ='-L/pro/local/lib +DD64 -L/usr/lib/hpux64'
libpth=/pro/local/lib /usr/lib/hpux64 /lib /usr/lib /usr/ccs/lib /usr/local/lib
- libs=-lcl -lpthread -lnsl -lnm -ldb -ldl -ldld -lm -lsec -lc
- perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
+ libs=-lcl -lpthread -lnm -ldb -ldl -ldld -lm -lsec -lc
+ perllibs=-lcl -lpthread -lnm -ldl -ldld -lm -lsec -lc
libc=/usr/lib/hpux64/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/24_plv514.t b/cpan/Config-Perl-V/t/24_plv514.t
index 3377b41..fdd8046 100644
--- a/cpan/Config-Perl-V/t/24_plv514.t
+++ b/cpan/Config-Perl-V/t/24_plv514.t
@@ -69,8 +69,8 @@ Summary of my perl5 (revision 5 version 14 subversion 2) configuration:
Linker and Libraries:
ld='ld', ldflags ='-L/usr/local/ppc64/lib64 -b64 -q64 -L/pro/local/lib -brtl -bdynamic -b64'
libpth=/usr/local/ppc64/lib64 /lib /usr/lib /usr/ccs/lib /usr/local/lib /usr/lib64
- libs=-lbind -lnsl -ldbm -ldb -ldl -lld -lm -lcrypt -lc
- perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lc
+ libs=-lbind -ldbm -ldb -ldl -lld -lm -lcrypt -lc
+ perllibs=-lbind -ldl -lld -lm -lcrypt -lc
libc=/lib/libc.a, so=a, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/25_plv516.t b/cpan/Config-Perl-V/t/25_plv516.t
index 5505245..5bad2ce 100644
--- a/cpan/Config-Perl-V/t/25_plv516.t
+++ b/cpan/Config-Perl-V/t/25_plv516.t
@@ -69,8 +69,8 @@ Summary of my perl5 (revision 5 version 16 subversion 3) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/26_plv518.t b/cpan/Config-Perl-V/t/26_plv518.t
index a255797..d3ab0b6 100644
--- a/cpan/Config-Perl-V/t/26_plv518.t
+++ b/cpan/Config-Perl-V/t/26_plv518.t
@@ -94,8 +94,8 @@ Summary of my perl5 (revision 5 version 18 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.17.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.17'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/26_plv5182.t b/cpan/Config-Perl-V/t/26_plv5182.t
index 25e52bb..fc24cd1 100644
--- a/cpan/Config-Perl-V/t/26_plv5182.t
+++ b/cpan/Config-Perl-V/t/26_plv5182.t
@@ -94,8 +94,8 @@ Summary of my perl5 (revision 5 version 18 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/pro/local/lib /lib /usr/lib /usr/local/lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/27_plv5200.t b/cpan/Config-Perl-V/t/27_plv5200.t
index f44273d..ca84b18 100644
--- a/cpan/Config-Perl-V/t/27_plv5200.t
+++ b/cpan/Config-Perl-V/t/27_plv5200.t
@@ -96,8 +96,8 @@ Summary of my perl5 (revision 5 version 20 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib/gcc/i586-suse-linux/4.8/include-fixed /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/lib /usr/lib /pro/local/lib /lib
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.18.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.18'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/27_plv5202.t b/cpan/Config-Perl-V/t/27_plv5202.t
index 83c3cb0..13b58a2 100644
--- a/cpan/Config-Perl-V/t/27_plv5202.t
+++ b/cpan/Config-Perl-V/t/27_plv5202.t
@@ -97,8 +97,8 @@ Summary of my perl5 (revision 5 version 20 subversion 2) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
- perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
+ libs=-lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
+ perllibs=-ldl -lm -lcrypt -lutil -lpthread -lc
libc=libc-2.19.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.19'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/28_plv5220.t b/cpan/Config-Perl-V/t/28_plv5220.t
index 885445b..26506c3 100644
--- a/cpan/Config-Perl-V/t/28_plv5220.t
+++ b/cpan/Config-Perl-V/t/28_plv5220.t
@@ -97,8 +97,8 @@ Summary of my perl5 (revision 5 version 22 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.19.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.19'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/30_plv5240.t b/cpan/Config-Perl-V/t/30_plv5240.t
index 2d6c0fd..c4a8e13 100644
--- a/cpan/Config-Perl-V/t/30_plv5240.t
+++ b/cpan/Config-Perl-V/t/30_plv5240.t
@@ -102,8 +102,8 @@ Summary of my perl5 (revision 5 version 24 subversion 0) configuration:
Linker and Libraries:
ld='cc', ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/5/include-fixed /usr/lib64/gcc/x86_64-suse-linux/5/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.23.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.23'
Dynamic Linking:
diff --git a/cpan/Config-Perl-V/t/31_plv52511.t b/cpan/Config-Perl-V/t/31_plv52511.t
index a5b39ca..bcceca7 100644
--- a/cpan/Config-Perl-V/t/31_plv52511.t
+++ b/cpan/Config-Perl-V/t/31_plv52511.t
@@ -131,8 +131,8 @@ Summary of my perl5 (revision 5 version 25 subversion 11) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/6/include-fixed /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.24.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/32_plv5261rc1.t b/cpan/Config-Perl-V/t/32_plv5261rc1.t
index 9db16b2..57b1e11 100644
--- a/cpan/Config-Perl-V/t/32_plv5261rc1.t
+++ b/cpan/Config-Perl-V/t/32_plv5261rc1.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 26 subversion 1) configuration:
ld='ccache cc'
ldflags ='-L/pro/local/lib -fstack-protector'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -ldb -ldl -lm -lcrypt -lutil -lc
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.19.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/33_plv52711r.t b/cpan/Config-Perl-V/t/33_plv52711r.t
index c6940d2..d7f2147 100644
--- a/cpan/Config-Perl-V/t/33_plv52711r.t
+++ b/cpan/Config-Perl-V/t/33_plv52711r.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 27 subversion 11) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.27.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/34_plv5280.t b/cpan/Config-Perl-V/t/34_plv5280.t
index f6c38df..47a1e0e 100644
--- a/cpan/Config-Perl-V/t/34_plv5280.t
+++ b/cpan/Config-Perl-V/t/34_plv5280.t
@@ -129,8 +129,8 @@ Summary of my perl5 (revision 5 version 28 subversion 0) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.27.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/35_plv52910g.t b/cpan/Config-Perl-V/t/35_plv52910g.t
index 6d822d1..383d146 100644
--- a/cpan/Config-Perl-V/t/35_plv52910g.t
+++ b/cpan/Config-Perl-V/t/35_plv52910g.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 29 subversion 10) configuration:
ld='g++'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/include/c++/8 /usr/include/c++/8/x86_64-suse-linux /usr/include/c++/8/backward /usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.29.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/36_plv5300.t b/cpan/Config-Perl-V/t/36_plv5300.t
index 6db7512..b3e26e3 100644
--- a/cpan/Config-Perl-V/t/36_plv5300.t
+++ b/cpan/Config-Perl-V/t/36_plv5300.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 30 subversion 0) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/8/include-fixed /usr/lib64/gcc/x86_64-suse-linux/8/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.29.so
so=so
useshrplib=true
diff --git a/cpan/Config-Perl-V/t/37_plv53111qm.t b/cpan/Config-Perl-V/t/37_plv53111qm.t
index f566f76..f94c275 100644
--- a/cpan/Config-Perl-V/t/37_plv53111qm.t
+++ b/cpan/Config-Perl-V/t/37_plv53111qm.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 31 subversion 11) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/10/include-fixed /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat -lquadmath
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc -lquadmath
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat -lquadmath
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc -lquadmath
libc=libc-2.31.so
so=so
useshrplib=false
diff --git a/cpan/Config-Perl-V/t/38_plv5320tld.t b/cpan/Config-Perl-V/t/38_plv5320tld.t
index a8f0d73..b1ba340 100644
--- a/cpan/Config-Perl-V/t/38_plv5320tld.t
+++ b/cpan/Config-Perl-V/t/38_plv5320tld.t
@@ -130,8 +130,8 @@ Summary of my perl5 (revision 5 version 32 subversion 0) configuration:
ld='cc'
ldflags ='-L/pro/local/lib -fstack-protector-strong'
libpth=/usr/local/lib /usr/lib64/gcc/x86_64-suse-linux/10/include-fixed /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/lib /usr/lib /pro/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
- libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
- perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
+ libs=-lpthread -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
+ perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
libc=libc-2.31.so
so=so
useshrplib=true
diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample
index b761363..ad711d5 100644
--- a/plan9/config_sh.sample
+++ b/plan9/config_sh.sample
@@ -857,7 +857,7 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=' /lib'
-libswanted='socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
+libswanted='socket bind inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt sec ucb bsd BSD PW x util'
libswanted_uselargefiles=''
line=''
lint=''
diff --git a/pod/perlrun.pod b/pod/perlrun.pod
index 5d3aa3e..e632e0a 100644
--- a/pod/perlrun.pod
+++ b/pod/perlrun.pod
@@ -895,11 +895,11 @@ non-letters). For example:
$ perl -V:libc
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
libc='/lib/libc-2.2.4.so';
$ perl -V:lib.*
libpth='/usr/local/lib /lib /usr/lib';
- libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
+ libs='-lgdbm -ldb -ldl -lm -lcrypt -lutil -lc';
lib_ext='.a';
libc='/lib/libc-2.2.4.so';
libperl='libperl.a';
diff --git a/win32/config.gc b/win32/config.gc
index af6fed9..111d4ad 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -869,8 +869,8 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''
diff --git a/win32/config.vc b/win32/config.vc
index f4625bf..cfa1c8a 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -868,8 +868,8 @@ libsdirs=''
libsfiles=''
libsfound=''
libspath=''
-libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
-libswanted_uselargefiles='net socket inet nsl nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
+libswanted_uselargefiles='net socket inet nm ndbm gdbm dbm db malloc dl ld sun m c cposix posix ndir dir crypt ucb bsd BSD PW x'
line='line'
lint=''
lkflags=''

View File

@@ -0,0 +1,19 @@
--- GNUmakefile.in.original 2016-12-19 06:01:36.664961781 -0500
+++ GNUmakefile.in 2016-12-19 06:02:15.872961781 -0500
@@ -16,7 +16,7 @@
docs:
$(MAKE) -C doc all
-$(call recurse,world,doc src config contrib,all)
+$(call recurse,world,src config contrib,all)
world:
+@echo "PostgreSQL, contrib, and documentation successfully made. Ready to install."
@@ -32,7 +32,7 @@
install-docs:
$(MAKE) -C doc install
-$(call recurse,install-world,doc src config contrib,install)
+$(call recurse,install-world,src config contrib,install)
install-world:
+@echo "PostgreSQL, contrib, and documentation installation complete."

View File

@@ -0,0 +1,75 @@
*** ../readline-8.1-patched/bind.c 2020-10-26 10:03:14.000000000 -0400
--- bind.c 2021-01-18 16:38:48.000000000 -0500
***************
*** 1235,1239 ****
else if (_rl_strnicmp (args, "version", 7) == 0)
{
! int rlversion, versionarg, op, previ, major, minor;
_rl_parsing_conditionalized_out = 1;
--- 1235,1239 ----
else if (_rl_strnicmp (args, "version", 7) == 0)
{
! int rlversion, versionarg, op, previ, major, minor, opresult;
_rl_parsing_conditionalized_out = 1;
***************
*** 1295,1316 ****
{
case OP_EQ:
! _rl_parsing_conditionalized_out = rlversion == versionarg;
break;
case OP_NE:
! _rl_parsing_conditionalized_out = rlversion != versionarg;
break;
case OP_GT:
! _rl_parsing_conditionalized_out = rlversion > versionarg;
break;
case OP_GE:
! _rl_parsing_conditionalized_out = rlversion >= versionarg;
break;
case OP_LT:
! _rl_parsing_conditionalized_out = rlversion < versionarg;
break;
case OP_LE:
! _rl_parsing_conditionalized_out = rlversion <= versionarg;
break;
}
}
/* Check to see if the first word in ARGS is the same as the
--- 1295,1317 ----
{
case OP_EQ:
! opresult = rlversion == versionarg;
break;
case OP_NE:
! opresult = rlversion != versionarg;
break;
case OP_GT:
! opresult = rlversion > versionarg;
break;
case OP_GE:
! opresult = rlversion >= versionarg;
break;
case OP_LT:
! opresult = rlversion < versionarg;
break;
case OP_LE:
! opresult = rlversion <= versionarg;
break;
}
+ _rl_parsing_conditionalized_out = 1 - opresult;
}
/* Check to see if the first word in ARGS is the same as the
*** ../readline-8.1/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 0
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 1

View File

@@ -0,0 +1,19 @@
--- zlib-1.2.8/win32/Makefile.gcc.orig 2016-02-11 13:46:54.000000000 -0500
+++ zlib-1.2.8/win32/Makefile.gcc 2016-02-11 13:53:08.000000000 -0500
@@ -57,6 +57,8 @@
RC = $(PREFIX)windres
RCFLAGS = --define GCC_WINDRES
+IMAGE_BASE = 0x63300000
+
STRIP = $(PREFIX)strip
CP = cp -fp
@@ -93,7 +95,7 @@
$(IMPLIB): $(SHAREDLIB)
$(SHAREDLIB): win32/zlib.def $(OBJS) $(OBJA) zlibrc.o
- $(CC) -shared -Wl,--out-implib,$(IMPLIB) $(LDFLAGS) \
+ $(CC) -shared -Wl,--out-implib,$(IMPLIB),--image-base,$(IMAGE_BASE) $(LDFLAGS) \
-o $@ win32/zlib.def $(OBJS) $(OBJA) zlibrc.o
$(STRIP) $@

View File

@@ -0,0 +1,48 @@
# frozen_string_literal: true
# Copyright 2021 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "firezone"
maintainer "FireZone"
homepage "https://firez.one"
license "Apache-2.0"
license_file "../LICENSE"
description <<~DESC
Web UI + Firewall manager for WireGuard
DESC
# Defaults to C:/firezone on Windows
# and /opt/firezone on all other platforms
install_dir "#{default_root}/#{name}"
build_version Omnibus::BuildVersion.semver
build_iteration 1
# Creates required build directories
# dependency "preparation"
# firezone build dependencies/components
dependency "compile_release"
dependency "erlang"
dependency "elixir"
dependency "openssl"
dependency "postgresql"
dependency "wireguard-tools"
dependency "nftables"
exclude "**/.git"
exclude "**/bundler/git"

View File

@@ -0,0 +1,47 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "autoconf"
default_version "2.71"
license "GPL-3.0"
license_file "COPYING"
license_file "COPYING.EXCEPTION"
skip_transitive_dependency_licensing true
dependency "m4"
version("2.69") { source sha256: "954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969" }
version("2.71") { source sha256: "431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c" }
source url: "https://ftp.gnu.org/gnu/autoconf/autoconf-#{version}.tar.gz"
relative_path "autoconf-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
if solaris2?
env["M4"] = "#{install_dir}/embedded/bin/m4"
end
command "./configure" \
" --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,50 @@
#
# Copyright 2012-2014 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "automake"
default_version "1.16.4"
dependency "autoconf"
dependency "perl-thread-queue"
license "GPL-2.0"
license_file "COPYING"
skip_transitive_dependency_licensing true
version("1.16.4") { source sha256: "8a0f0be7aaae2efa3a68482af28e5872d8830b9813a6a932a2571eac63ca1794" }
version("1.16") { source sha256: "80da43bb5665596ee389e6d8b64b4f122ea4b92a685b1dbd813cd1f0e0c2d83f" }
version("1.15") { source sha256: "7946e945a96e28152ba5a6beb0625ca715c6e32ac55f2e353ef54def0c8ed924" }
version("1.11.2") { source sha256: "c339e3871d6595620760725da61de02cf1c293af8a05b14592d6587ac39ce546" }
source url: "https://ftp.gnu.org/gnu/automake/automake-#{version}.tar.gz"
relative_path "automake-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
if version == "1.15"
command "./bootstrap.sh", env: env
else
command "./bootstrap", env: env
end
command "./configure" \
" --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,35 @@
# frozen_string_literal: true
# Copyright:: FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "bison"
license "GPL-3.0"
license_file "COPYING"
skip_transitive_dependency_licensing true
default_version "3.7"
source url: "http://mirrors.ibiblio.org/gnu/bison/bison-#{version}.tar.gz"
version("3.7") do
source sha256: "492ad61202de893ca21a99b621d63fa5389da58804ad79d3f226b8d04b803998"
end
relative_path "bison-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,55 @@
#
# Copyright 2013-2018 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Install bzip2 and its shared library, libbz2.so
# This library object is required for building Python with the bz2 module,
# and should be picked up automatically when building Python.
name "bzip2"
default_version "1.0.8"
license "BSD-2-Clause"
license_file "LICENSE"
skip_transitive_dependency_licensing true
dependency "zlib"
dependency "openssl"
# version_list: url=https://sourceware.org/pub/bzip2/ filter=*.tar.gz
version("1.0.8") { source sha256: "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269" }
source url: "https://fossies.org/linux/misc/#{name}-#{version}.tar.gz"
relative_path "#{name}-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
# Avoid warning where .rodata cannot be used when making a shared object
env["CFLAGS"] << " -fPIC" unless aix?
# The list of arguments to pass to make
args = "PREFIX='#{install_dir}/embedded' VERSION='#{version}'"
args << " CFLAGS='-qpic=small -qpic=large -O2 -g -D_ALL_SOURCE -D_LARGE_FILES'" if aix?
patch source: "makefile_take_env_vars.patch", plevel: 1, env: env
patch source: "makefile_no_bins.patch", plevel: 1, env: env # removes various binaries we don't want to ship
patch source: "soname_install_dir.patch", env: env if mac_os_x?
patch source: "aix_makefile.patch", env: env if aix?
make "#{args}", env: env
make "#{args} -f Makefile-libbz2_so", env: env
make "#{args} install", env: env
end

View File

@@ -0,0 +1,48 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "cacerts"
license "MPL-2.0"
license_file "https://www.mozilla.org/media/MPL/2.0/index.815ca599c9df.txt"
skip_transitive_dependency_licensing true
default_version "2021-01-19"
source url: "https://curl.haxx.se/ca/cacert-#{version}.pem"
# versions_list: https://curl.se/docs/caextract.html
version("2021-01-19") { source sha256: "e010c0c071a2c79a76aa3c289dc7e4ac4ed38492bfda06d766a80b707ebd2f29" }
version("2020-12-08") { source sha256: "313d562594ebd07846ad6b840dd18993f22e0f8b3f275d9aacfae118f4f00fb7" }
version("2020-10-14") { source sha256: "bb28d145ed1a4ee67253d8ddb11268069c9dafe3db25a9eee654974c4e43eee5" }
version("2020-07-22") { source sha256: "2782f0f8e89c786f40240fc1916677be660fb8d8e25dede50c9f6f7b0c2c2178" }
version("2020-06-24") { source sha256: "726889705b00f736200ed7999f7a50021b8735d53228d679c4e6665aa3b44987" }
relative_path "cacerts-#{version}"
build do
mkdir "#{install_dir}/embedded/ssl/certs"
copy "#{project_dir}/cacert*.pem", "#{install_dir}/embedded/ssl/certs/cacert.pem"
copy "#{project_dir}/cacert*.pem", "#{install_dir}/embedded/ssl/cert.pem" if windows?
# Windows does not support symlinks
unless windows?
link "certs/cacert.pem", "#{install_dir}/embedded/ssl/cert.pem", unchecked: true
block { File.chmod(0644, "#{install_dir}/embedded/ssl/certs/cacert.pem") }
end
end

View File

@@ -0,0 +1,56 @@
# frozen_string_literal: true
# Copyright 2021 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "compile_release"
description "the steps required to compile the firezone elixir application"
default_version "1.0.0"
dependency "postgresql"
dependency "nodejs"
dependency "elixir"
version("1.0.0") do
source path: File.expand_path("../", Omnibus::Config.project_root),
options: { exclude: [
".env",
".git",
".ci",
".vagrant",
".github",
"_build",
"deps",
"omnibus",
"apps/fz_http/assets/node_modules"
] }
end
license :project_license
skip_transitive_dependency_licensing true
build do
env = with_standard_compiler_flags(with_embedded_path).merge("MIX_ENV" => "prod")
command "mix local.hex --force", env: env
command "mix local.rebar --force", env: env
command "mix deps.get --only prod", env: env
command "mix deps.compile --only prod", env: env
command "npm ci --prefix apps/fz_http/assets --progress=false --no-audit --loglevel=error", env: env
command "npm run --prefix apps/fz_http/assets deploy", env: env
command "cd apps/fz_http && mix phx.digest", env: env
command "mix release", env: env
move "_build/prod/rel/firezone", "#{install_dir}/embedded/firezone"
end

View File

@@ -0,0 +1,37 @@
#
# Copyright 2015 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: no version pinning
name "config_guess"
default_version "master"
# Use our github mirror of the savannah repository
source git: "https://github.com/chef/config-mirror.git"
# http://savannah.gnu.org/projects/config
license "GPL-3.0 (with exception)"
license_file "config.guess"
license_file "config.sub"
skip_transitive_dependency_licensing true
relative_path "config_guess-#{version}"
build do
mkdir "#{install_dir}/embedded/lib/config_guess"
copy "#{project_dir}/config.guess", "#{install_dir}/embedded/lib/config_guess/config.guess"
copy "#{project_dir}/config.sub", "#{install_dir}/embedded/lib/config_guess/config.sub"
end

View File

@@ -0,0 +1,37 @@
#
# Copyright 2017 Chef Software, Inc.
# Copyright 2021 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "elixir"
default_version "1.12.2"
license "Apache-2.0"
license_file "LICENSE"
dependency "erlang"
version("1.4.2") { source sha256: "cb4e2ec4d68b3c8b800179b7ae5779e2999aa3375f74bd188d7d6703497f553f" }
version("1.12.2") { source sha256: "701006d1279225fc42f15c8d3f39906db127ddcc95373d34d8d160993356b15c" }
source url: "https://github.com/elixir-lang/elixir/archive/v#{version}.tar.gz"
relative_path "elixir-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
make "-j #{workers}", env: env
make "install PREFIX=#{install_dir}/embedded", env: env
end

View File

@@ -0,0 +1,136 @@
#
# Copyright:: Chef Software, Inc.
# Copyright:: FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "erlang"
default_version "24.0.5"
license "Apache-2.0"
license_file "LICENSE.txt"
skip_transitive_dependency_licensing true
dependency "zlib"
dependency "openssl"
dependency "ncurses"
dependency "config_guess"
# grab from github so we can get patch releases if we need to
source url: "https://github.com/erlang/otp/archive/OTP-#{version}.tar.gz"
relative_path "otp-OTP-#{version}"
# versions_list: https://github.com/erlang/otp/tags filter=*.tar.gz
version("24.0.5") { source sha256: "dd189cf94bf86c610a66f5d9f1a49b8d95a7ce1a7534d216e97e8fade271e624" }
version("23.3.3") { source sha256: "839d74e71a457295d95b8674f1848a5d7d9c4c274a041ef8026d035da88858ae" }
version("23.3.2") { source sha256: "02443dd42023d0eb73f73dc05f4d3ded7bc4ab59d348041a37a045ba1581b48b" }
version("22.2") { source sha256: "232c37a502c7e491a9cbf86acb7af64fbc1a793fcbcbd0093cb029cf1c3830a7" }
version("22.1.8") { source sha256: "7302be70cee2c33689bf2c2a3e7cfee597415d0fb3e4e71bd3e86bd1eff9cfdc" }
version("21.3.8.11") { source sha256: "aab77124285820608cd7a90f6b882e42bb5739283e10a8593d7f5bce9b30b16a" }
version("21.1") { source sha256: "7212f895ae317fa7a086fa2946070de5b910df5d41263e357d44b0f1f410af0f" }
version("20.3.8.9") { source sha256: "897dd8b66c901bfbce09ed64e0245256aca9e6e9bdf78c36954b9b7117192519" }
version("20.0") { source sha256: "22710927ad2e48a0964997bf5becb24abb1f4fed86f5f05af22a9e1df636b787" }
version("19.3.6.11") { source sha256: "c857ea6d2c901bfb633d9ceeb5e05332475357f185dd5112b7b6e4db80072827" }
version("18.3.4.9") { source sha256: "25ef8ba3824cb726c4830abf32c2a2967925b1e33a8e8851dba596e933e2689a" }
version("18.3") { source sha256: "a6d08eb7df06e749ccaf3049b33ceae617a3c466c6a640ee8d248c2372d48f4e" }
version("18.2") { source sha256: "3944ce41d13fbef1e1e80d7335b2167849e8566581513d5d9226cd211d3d58f9" }
version("18.1") { source sha256: "6b956dda690d3f3bf244249e8d422dd606231cc7229675bf5e34b5ba2ae83e9b" }
build do
if version.satisfies?(">= 18.3")
# Don't listen on 127.0.0.1/::1 implicitly whenever ERL_EPMD_ADDRESS is given
patch source: "epmd-require-explicitly-adding-loopback-address.patch", plevel: 1
end
env = with_standard_compiler_flags(with_embedded_path).merge(
# WARNING!
"CFLAGS" => "-L#{install_dir}/embedded/lib -I#{install_dir}/embedded/erlang/include",
"LDFLAGS" => "-Wl,-rpath #{install_dir}/embedded/lib -L#{install_dir}/embedded/lib -I#{install_dir}/embedded/erlang/include"
)
env.delete("CPPFLAGS")
# The TYPE env var sets the type of emulator you want
# We want the default so we give TYPE and empty value
# in case it was set by CI.
env["TYPE"] = ""
update_config_guess(target: "erts/autoconf")
update_config_guess(target: "lib/common_test/priv/auxdir")
update_config_guess(target: "lib/erl_interface/src/auxdir")
update_config_guess(target: "lib/wx/autoconf")
if version.satisfies?(">= 19.0")
update_config_guess(target: "lib/common_test/test_server/src")
else
update_config_guess(target: "lib/test_server/src")
end
# Setup the erlang include dir
mkdir "#{install_dir}/embedded/erlang/include"
# At this time, erlang does not expose a way to specify the path(s) to these
# libraries, but it looks in its local +include+ directory as part of the
# search, so we will symlink them here so they are picked up.
#
# In future releases of erlang, someone should check if these flags (or
# environment variables) are avaiable to remove this ugly hack.
%w{ncurses openssl zlib.h zconf.h}.each do |name|
link "#{install_dir}/embedded/include/#{name}", "#{install_dir}/embedded/erlang/include/#{name}"
end
# Note 2017-02-28 sr: HiPE doesn't compile with OTP 18.3 on ppc64le (https://bugs.erlang.org/browse/ERL-369)
# Compiling fails when linking beam.smp, with
# powerpc64le-linux-gnu/libutil.so: error adding symbols: File in wrong format
#
# We've been having issues with ppc64le and hipe before, too:
# https://github.com/chef/chef-server/commit/4fa25ed695acaf819b11f71c6db1aab5c8adcaee
#
# It's trying to compile using a linker script for ppc64, it seems:
# https://github.com/erlang/otp/blob/c1ea854fac3d8ed14/erts/emulator/hipe/elf64ppc.x
# Probably introduced with https://github.com/erlang/otp/commit/37d63e9b8a0a96
# See also https://sourceware.org/ml/binutils/2015-05/msg00148.html
hipe = ppc64le? ? "disable" : "enable"
unless File.exist?("./configure")
# Building from github source requires this step
command "./otp_build autoconf"
end
# Note: et, debugger and observer applications require wx to
# build. The tarballs from the downloads site has prebuilt the beam
# files, so we were able to get away without disabling them and
# still build. When building from raw source we must disable them
# explicitly.
wx = "without"
command "./configure" \
" --prefix=#{install_dir}/embedded" \
" --enable-threads" \
" --enable-smp-support" \
" --enable-kernel-poll" \
" --enable-dynamic-ssl-lib" \
" --enable-shared-zlib" \
" --enable-fips" \
" --#{hipe}-hipe" \
" --#{wx}-wx" \
" --#{wx}-et" \
" --#{wx}-debugger" \
" --#{wx}-observer" \
" --without-megaco" \
" --without-javac" \
" --with-ssl=#{install_dir}/embedded" \
" --disable-debug", env: env
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,43 @@
# frozen_string_literal: true
# Copyright:: FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name "flex"
license_file "COPYING"
skip_transitive_dependency_licensing true
default_version "2.6.4"
source url: "https://github.com/westes/flex/releases/download/v#{version}/flex-#{version}.tar.gz"
version("2.6.4") do
source sha256: "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995"
end
relative_path "#{name}-#{version}"
dependency "bison"
dependency "m4"
dependency "gettext"
dependency "libtool"
dependency "autoconf"
dependency "automake"
build do
env = with_standard_compiler_flags(with_embedded_path)
# Fixes https://github.com/spack/spack/issues/8152
env["CFLAGS"] << " -D_GNU_SOURCE" if debian?
command "./autogen.sh", env: env
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,56 @@
# frozen_string_literal: true
# Copyright:: FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name "gettext"
license "GPL-3.0"
license_file "COPYING"
default_version "0.21"
dependency "m4"
dependency "autoconf"
dependency "automake"
dependency "bison"
dependency "perl"
dependency "libiconv"
dependency "ncurses"
dependency "bzip2"
dependency "zlib"
dependency "libxml2"
dependency "liblzma"
dependency "icu"
dependency "pkg-config"
source url: "https://ftp.gnu.org/pub/gnu/gettext/gettext-#{version}.tar.gz"
version("0.21") do
source sha256: "c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12"
end
relative_path "#{name}-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
configure_command = [
"./configure",
# Enabling OpenMP requires libgomp, which requires building gcc which is very slow.
"--disable-openmp",
"--prefix=#{install_dir}/embedded"
]
command configure_command, env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,48 @@
#
# Copyright 2014 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "gmp"
default_version "6.2.1"
# version_list: url=https://ftp.gnu.org/gnu/gmp/ filter=*.tar.bz2
version("6.2.1") { source sha256: "eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c" }
version("6.1.0") { source sha256: "498449a994efeba527885c10405993427995d3f86b8768d8cdf8d9dd7c6b73e8" }
version("6.0.0a") { source sha256: "7f8e9a804b9c6d07164cf754207be838ece1219425d64e28cfa3e70d5c759aaf" }
source url: "https://ftp.gnu.org/gnu/gmp/gmp-#{version}.tar.bz2"
if version == "6.0.0a"
# version 6.0.0a expands to 6.0.0
relative_path "gmp-6.0.0"
else
relative_path "gmp-#{version}"
end
build do
env = with_standard_compiler_flags(with_embedded_path)
if solaris2?
env["ABI"] = "32"
end
configure_command = ["./configure",
"--prefix=#{install_dir}/embedded"]
command configure_command.join(" "), env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,20 @@
name "icu"
license_file "LICENSE"
skip_transitive_dependency_licensing true
default_version "69.1"
source url: "https://github.com/unicode-org/icu/releases/download/release-#{version.gsub(".", "-")}/icu4c-#{version.gsub(".", "_")}-src.tgz"
version("69.1") do
source sha256: "4cba7b7acd1d3c42c44bb0c14be6637098c7faf2b330ce876bc5f3b915d09745"
end
relative_path "icu/source"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,68 @@
# Copyright 2012-2014 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libedit"
default_version "20210419-3.1"
license "BSD-3-Clause"
license_file "COPYING"
skip_transitive_dependency_licensing true
dependency "ncurses"
dependency "config_guess"
# version_list: url=http://thrysoee.dk/editline/ filter=*.tar.gz
version("20210419-3.1") { source sha256: "571ebe44b74860823e24a08cf04086ff104fd7dfa1020abf26c52543134f5602" }
version("20150325-3.1") { source sha256: "c88a5e4af83c5f40dda8455886ac98923a9c33125699742603a88a0253fcc8c5" }
version("20141030-3.1") { source sha256: "9701e16570fb8f7fa407b506986652221b701a9dd61defc05bb7d1c61cdf5a40" }
version("20130712-3.1") { source sha256: "5d9b1a9dd66f1fe28bbd98e4d8ed1a22d8da0d08d902407dcc4a0702c8d88a37" }
version("20120601-3.0") { source sha256: "51f0f4b4a97b7ebab26e7b5c2564c47628cdb3042fd8ba8d0605c719d2541918" }
source url: "http://www.thrysoee.dk/editline/libedit-#{version}.tar.gz"
if version == "20141030-3.1"
# released tar file has name discrepency in folder name for this version
relative_path "libedit-20141029-3.1"
else
relative_path "libedit-#{version}"
end
build do
env = with_standard_compiler_flags(with_embedded_path)
# The patch is from the FreeBSD ports tree and is for GCC compatibility.
# http://svnweb.freebsd.org/ports/head/devel/libedit/files/patch-vi.c?annotate=300896
if version.to_i < 20150325 && (freebsd? || openbsd?)
patch source: "freebsd-vi-fix.patch", env: env
end
if openbsd?
patch source: "openbsd-weak-alias-fix.patch", plevel: 1, env: env
elsif aix?
# this forces us to build correctly, in the event that the system locale
# is non-standard.
env["LC_ALL"] = "en_US"
end
update_config_guess
command "./configure" \
" --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,67 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libffi"
default_version "3.4.2"
license "MIT"
license_file "LICENSE"
skip_transitive_dependency_licensing true
# version_list: url=ftp://sourceware.org/pub/libffi/ filter=*.tar.gz
version("3.2.1") { source sha256: "d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37" }
version("3.3") { source sha256: "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056" }
version("3.4.2") { source sha256: "540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620" }
source url: "https://github.com/libffi/libffi/releases/download/v#{version}/libffi-#{version}.tar.gz"
relative_path "libffi-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
env["INSTALL"] = "/opt/freeware/bin/install" if aix?
# disable option checking as disable-docs is 3.3+ only
configure_command = ["--disable-option-checking",
"--disable-docs",
]
if version == "3.3" && mac_os_x? && arm?
patch source: "libffi-3.3-arm64.patch", plevel: 1, env: env
end
# AIX's old version of patch doesn't like the patch here
unless aix?
# disable multi-os-directory via configure flag (don't use /lib64)
# Works on all platforms, and is compatible on 32bit platforms as well
configure_command << "--disable-multi-os-directory"
# add the --disable-multi-os-directory flag to 3.2.1
if version == "3.2.1"
patch source: "libffi-3.2.1-disable-multi-os-directory.patch", plevel: 1, env: env
end
end
configure(*configure_command, env: env)
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
# libffi's default install location of header files is awful...
mkdir "#{install_dir}/embedded/include"
copy "#{install_dir}/embedded/lib/libffi-#{version}/include/*", "#{install_dir}/embedded/include/"
end

View File

@@ -0,0 +1,53 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# CAUTION - although its not used, external libraries such as nokogiri may pick up an optional dep on
# libiconv such that removal of libiconv will break those libraries on upgrade. With an better story around
# external gem handling when chef-client is upgraded libconv could be dropped.
name "libiconv"
default_version "1.16"
license "LGPL-2.1"
license_file "COPYING.LIB"
skip_transitive_dependency_licensing true
dependency "config_guess"
# versions_list: https://ftp.gnu.org/pub/gnu/libiconv/ filter=*.tar.gz
version("1.15") { source sha256: "ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178" }
version("1.16") { source sha256: "e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04" }
source url: "https://ftp.gnu.org/pub/gnu/libiconv/libiconv-#{version}.tar.gz"
relative_path "libiconv-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
# freebsd 10 needs to be build PIC
env["CFLAGS"] << " -fPIC" if freebsd?
update_config_guess(target: "build-aux")
update_config_guess(target: "libcharset/build-aux")
configure(env: env)
pmake = "-j #{workers}"
make "#{pmake}", env: env
make "#{pmake} install-lib" \
" libdir=#{install_dir}/embedded/lib" \
" includedir=#{install_dir}/embedded/include", env: env
end

View File

@@ -0,0 +1,58 @@
#
# Copyright 2014-2018 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "liblzma"
default_version "5.2.5"
license "Public-Domain"
license_file "COPYING"
skip_transitive_dependency_licensing true
# version_list: url=http://tukaani.org/xz/ filer=*.tar.gz
version("5.2.5") { source sha256: "f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10" }
version("5.2.4") { source sha256: "b512f3b726d3b37b6dc4c8570e137b9311e7552e8ccbab4d39d47ce5f4177145" }
version("5.2.3") { source sha256: "71928b357d0a09a12a4b4c5fafca8c31c19b0e7d3b8ebb19622e96f26dbf28cb" }
version("5.2.2") { source sha256: "73df4d5d34f0468bd57d09f2d8af363e95ed6cc3a4a86129d2f2c366259902a2" }
source url: "http://tukaani.org/xz/xz-#{version}.tar.gz"
relative_path "xz-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
# liblzma properly uses CFLAGS for C compilation and CPPFLAGS for common
# flags used across tools such as windres. Don't put anything in it
# that can be misinterpreted by windres.
env["CPPFLAGS"] = "-I#{install_dir}/embedded/include" if windows?
config_command = [
"--disable-debug",
"--disable-dependency-tracking",
"--disable-doc",
"--disable-scripts",
"--disable-lzma-links",
"--disable-lzmainfo",
"--disable-lzmadec",
"--disable-xzdec",
"--disable-xz",
]
config_command << "--disable-nls" if windows?
configure(*config_command, env: env)
make "install", env: env
end

View File

@@ -0,0 +1,37 @@
# frozen_string_literal: true
# Copyright FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libmnl"
default_version "1.0.4"
license "GPL-2.1"
license_file "COPYING"
skip_transitive_dependency_licensing true
version("1.0.4") { source sha256: "171f89699f286a5854b72b91d06e8f8e3683064c5901fb09d954a9ab6f551f81" }
source url: "https://www.netfilter.org/pub/libmnl/libmnl-#{version}.tar.bz2"
relative_path "#{name}-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,37 @@
# frozen_string_literal: true
# Copyright FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libnftnl"
default_version "1.2.0"
license "GPL-2.1"
license_file "COPYING"
skip_transitive_dependency_licensing true
version("1.2.0") { source sha256: "90b01fddfe9be8c3245c3ba5ff5a4424a8df708828f92b2b361976b658c074f5" }
source url: "https://www.netfilter.org/pub/libnftnl/libnftnl-#{version}.tar.bz2"
relative_path "#{name}-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,45 @@
#
# Copyright 2012-2014 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libossp-uuid"
default_version "1.6.2"
license "MIT"
license_file "README"
skip_transitive_dependency_licensing true
dependency "config_guess"
# version_list: url=https://www.mirrorservice.org/sites/ftp.ossp.org/pkg/lib/uuid/ filter=*.tar.gz
version("1.6.2") { source sha256: "11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0" }
# ftp on ftp.ossp.org is unavaiable so we must use another mirror site.
source url: "https://www.mirrorservice.org/sites/ftp.ossp.org/pkg/lib/uuid/uuid-#{version}.tar.gz"
relative_path "uuid-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
update_config_guess
command "./configure" \
" --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,55 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libtool"
default_version "2.4.6"
license "GPL-2.0"
license_file "COPYING"
skip_transitive_dependency_licensing true
dependency "config_guess"
# version_list: url=https://ftp.gnu.org/gnu/libtool/ filter=*.tar.gz
version("2.4.6") { source sha256: "e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3" }
version("2.4.2") { source sha256: "b38de44862a987293cd3d8dfae1c409d514b6c4e794ebc93648febf9afc38918" }
version("2.4") { source sha256: "13df57ab63a94e196c5d6e95d64e53262834fe780d5e82c28f177f9f71ddf62e" }
source url: "https://ftp.gnu.org/gnu/libtool/libtool-#{version}.tar.gz"
relative_path "libtool-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
update_config_guess
update_config_guess(target: "libltdl/config")
if aix?
env["M4"] = "/opt/freeware/bin/m4"
elsif solaris2?
# We hit this bug on Solaris11 platforms bug#14291: libtool 2.4.2 fails to build due to macro_revision reversion
# The problem occurs with LANG=en_US.UTF-8 but not with LANG=C
env["LANG"] = "C"
end
command "./configure" \
" --prefix=#{install_dir}/embedded", env: env
make env: env
make "install", env: env
end

View File

@@ -0,0 +1,61 @@
#
# Copyright:: Chef Software Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "libxml2"
default_version "2.9.10" # 2.9.12 is not properly building as of 5.20.21
license "MIT"
license_file "COPYING"
skip_transitive_dependency_licensing true
dependency "zlib"
dependency "liblzma"
dependency "config_guess"
# version_list: url=ftp://xmlsoft.org/libxml2/ filter=libxml2-*.tar.gz
version("2.9.12") { source sha256: "c8d6681e38c56f172892c85ddc0852e1fd4b53b4209e7f4ebf17f7e2eae71d92" }
version("2.9.10") { source sha256: "aafee193ffb8fe0c82d4afef6ef91972cbaf5feea100edc2f262750611b4be1f" }
version("2.9.9") { source sha256: "94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871" }
source url: "ftp://xmlsoft.org/libxml2/libxml2-#{version}.tar.gz"
relative_path "libxml2-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
configure_command = [
"--with-zlib=#{install_dir}/embedded",
"--with-lzma=#{install_dir}/embedded",
"--with-sax1", # required for nokogiri to compile
"--without-iconv",
"--without-python",
"--without-icu",
"--without-debug",
"--without-mem-debug",
"--without-run-debug",
"--without-legacy", # we don't need legacy interfaces
"--without-catalog",
"--without-docbook",
]
update_config_guess
configure(*configure_command, env: env)
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,35 @@
# frozen_string_literal: true
# Copyright 2012-2014 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "linenoise"
description "A small self-contained alternative to readline and libedit"
license_file "LICENSE"
skip_transitive_dependency_licensing true
source github: "antirez/linenoise"
default_version "master"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "gcc -c linenoise.c -o linenoise.o -fPIC", env: env
command "gcc -shared -o liblinenoise.so linenoise.o -lm", env: env
copy "liblinenoise.so", "#{install_dir}/embedded/lib/"
copy "linenoise.h", "#{install_dir}/embedded/include/"
end

View File

@@ -0,0 +1,40 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "m4"
default_version "1.4.18"
license "GPL-3.0"
license_file "COPYING"
skip_transitive_dependency_licensing true
version("1.4.18") { source sha256: "ab2633921a5cd38e48797bf5521ad259bdc4b979078034a3b790d7fec5493fab" }
source url: "https://ftp.gnu.org/gnu/m4/m4-#{version}.tar.gz"
relative_path "m4-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
patch source: "m4-1.4.18-glibc-change-work-around.patch", plevel: 1, env: env if version == "1.4.18"
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,159 @@
# frozen_string_literal: true
# Copyright 2012-2019, Chef Software Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "ncurses"
default_version "6.2"
license "MIT"
license_file "http://invisible-island.net/ncurses/ncurses-license.html"
license_file "http://invisible-island.net/ncurses/ncurses.faq.html"
skip_transitive_dependency_licensing true
dependency "config_guess"
# versions_list: https://ftp.gnu.org/gnu/ncurses/ filter=*.tar.gz
version("6.2") { source sha256: "30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d" }
version("6.1") { source sha256: "aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17" }
version("5.9") { source sha256: "9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b" }
source url: "https://ftp.gnu.org/gnu/ncurses/ncurses-#{version}.tar.gz"
relative_path "ncurses-#{version}"
########################################################################
#
# wide-character support:
# Ruby 1.9 optimistically builds against libncursesw for UTF-8
# support. In order to prevent Ruby from linking against a
# package-installed version of ncursesw, we build wide-character
# support into ncurses with the "--enable-widec" configure parameter.
# To support other applications and libraries that still try to link
# against libncurses, we also have to create non-wide libraries.
#
# The methods below are adapted from:
# http://www.linuxfromscratch.org/lfs/view/development/chapter06/ncurses.html
#
########################################################################
build do
env = with_standard_compiler_flags(with_embedded_path)
env.delete("CPPFLAGS")
if smartos?
# SmartOS is Illumos Kernel, plus NetBSD userland with a GNU toolchain.
# These patches are taken from NetBSD pkgsrc and provide GCC 4.7.0
# compatibility:
# http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/ncurses/patches/
patch source: "patch-aa", plevel: 0, env: env
patch source: "patch-ab", plevel: 0, env: env
patch source: "patch-ac", plevel: 0, env: env
patch source: "patch-ad", plevel: 0, env: env
patch source: "patch-cxx_cursesf.h", plevel: 0, env: env
patch source: "patch-cxx_cursesm.h", plevel: 0, env: env
# Chef patches - <sean@sean.io>
# The configure script from the pristine tarball detects xopen_source_extended incorrectly.
# Manually working around a false positive.
patch source: "ncurses-5.9-solaris-xopen_source_extended-detection.patch", plevel: 0, env: env
end
update_config_guess
# AIX's old version of patch doesn't like the patches here
unless aix?
if version == "5.9"
# Patch to add support for GCC 5, doesn't break previous versions
patch source: "ncurses-5.9-gcc-5.patch", plevel: 1, env: env
end
end
if mac_os_x? ||
# Clang became the default compiler in FreeBSD 10+
(freebsd? && ohai["os_version"].to_i >= 1000024)
# References:
# https://github.com/Homebrew/homebrew-dupes/issues/43
# http://invisible-island.net/ncurses/NEWS.html#t20110409
#
# Patches ncurses for clang compiler. Changes have been accepted into
# upstream, but occurred shortly after the 5.9 release. We should be able
# to remove this after upgrading to any release created after June 2012
patch source: "ncurses-clang.patch", env: env
end
if openbsd?
patch source: "patch-ncurses_tinfo_lib__baudrate.c", plevel: 0, env: env
end
configure_command = [
"./configure",
"--prefix=#{install_dir}/embedded",
"--enable-overwrite",
"--with-shared",
"--with-termlib",
"--without-ada",
"--without-cxx-binding",
"--without-debug",
"--without-manpages"
]
if aix?
# AIX kinda needs 5.9-20140621 or later
# because of a naming snafu in shared library naming.
# see http://invisible-island.net/ncurses/NEWS.html#t20140621
# let libtool deal with library silliness
configure_command << "--with-libtool=\"#{install_dir}/embedded/bin/libtool\""
# stick with just the shared libs on AIX
configure_command << "--without-normal"
# ncurses's ./configure incorrectly
# "figures out" ARFLAGS if you try
# to set them yourself
env.delete("ARFLAGS")
# use gnu install from the coreutils IBM rpm package
env["INSTALL"] = "/opt/freeware/bin/install"
end
command configure_command.join(" "), env: env
# unfortunately, libtool may try to link to libtinfo
# before it has been assembled; so we have to build in serial
make "libs", env: env if aix?
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
# Build non-wide-character libraries
make "distclean", env: env
configure_command << "--enable-widec"
command configure_command.join(" "), env: env
make "libs", env: env if aix?
make "-j #{workers}", env: env
# Installing the non-wide libraries will also install the non-wide
# binaries, which doesn't happen to be a problem since we don't
# utilize the ncurses binaries in private-chef (or oss chef)
make "-j #{workers} install", env: env
# Ensure embedded ncurses wins in the LD search path
if smartos?
link "#{install_dir}/embedded/lib/libcurses.so", "#{install_dir}/embedded/lib/libcurses.so.1"
end
end

View File

@@ -0,0 +1,53 @@
# frozen_string_literal: true
# Copyright:: FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "nftables"
license_file "COPYING"
# Some weirdness in the official release package so use git and switch to tag
# default_version "0.9.9"
# source url: "https://www.netfilter.org/pub/nftables/nftables-#{version}.tar.bz2"
# version("0.9.9") { source sha256: "76ef2dc7fd0d79031a8369487739a217ca83996b3a746cec5bda79da11e3f1b4" }
source git: "git://git.netfilter.org/nftables"
default_version "v0.9.9"
relative_path "#{name}-#{version}"
dependency "gmp"
dependency "m4"
dependency "bison"
dependency "flex"
dependency "libmnl"
dependency "libnftnl"
dependency "libtool"
dependency "linenoise"
dependency "pkg-config"
build do
env = with_standard_compiler_flags(with_embedded_path)
configure_cmd = [
"./configure",
"--prefix=#{install_dir}/embedded",
"--disable-debug",
"--disable-man-doc",
"--with-cli=linenoise" # readline seems to fail to be detected and libedit fails with missing "editline/history.h"
]
command "./autogen.sh", env: env
command configure_cmd.join(" "), env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,22 @@
name "nodejs"
description "NodeJS"
default_version "16.6.2"
license_file "LICENSE"
source url: "https://github.com/nodejs/node/archive/refs/tags/v#{version}.tar.gz"
version("16.6.2") do
source sha256: "9b539b1ea5e3fbd173fcbaae97088401b228c36c2076c98d04c73802713bbb73"
end
dependency "python"
relative_path "node-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,177 @@
#
# Copyright:: Chef Software Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "openssl"
license "OpenSSL"
license_file "LICENSE"
skip_transitive_dependency_licensing true
dependency "cacerts"
dependency "openssl-fips" if fips_mode?
default_version "1.1.1k" # do_not_auto_update
# Openssl builds engines as libraries into a special directory. We need to include
# that directory in lib_dirs so omnibus can sign them during macOS deep signing.
lib_dirs lib_dirs.concat(["#{install_dir}/embedded/lib/engines"])
lib_dirs lib_dirs.concat(["#{install_dir}/embedded/lib/engines-1.1"]) if version.start_with?("1.1")
# OpenSSL source ships with broken symlinks which windows doesn't allow.
# So skip error checking with `extract: :lax_tar`
if version.satisfies?("> 1.0.2u") && version.satisfies?("< 1.1.0")
# 1.0.2u was the last public release of 1.0.2. Subsequent releases come from a support contract with OpenSSL Software Services
source url: "https://s3.amazonaws.com/chef-releng/openssl/openssl-#{version}.tar.gz", extract: :lax_tar
else
# As of 2020-09-09 even openssl-1.0.0.tar.gz can be downloaded from /source/openssl-VERSION.tar.gz
# However, the latest releases are not in /source/old/VERSION/openssl-VERSION.tar.gz.
# Let's stick with the simpler one for now.
source url: "https://www.openssl.org/source/openssl-#{version}.tar.gz", extract: :lax_tar
end
version("1.1.1k") { source sha256: "892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5" }
version("1.1.1j") { source sha256: "aaf2fcb575cdf6491b98ab4829abf78a3dec8402b8b81efc8f23c00d443981bf" }
version("1.1.1i") { source sha256: "e8be6a35fe41d10603c3cc635e93289ed00bf34b79671a3a4de64fcee00d5242" }
version("1.0.2y") { source sha256: "4882ec99f8e147ab26375da8a6af92efae69b6aef505234764f8cd00a1b81ffc" }
version("1.0.2x") { source sha256: "79cb4e20004a0d1301210aee7e154ddfba3d6a33d0df1f6c5d3257cb915a59c9" }
version("1.0.2w") { source sha256: "a675ad1a9df59015cebcdf713de76a422347c5d99f11232fe75758143defd680" }
version("1.0.2i") { source sha256: "9287487d11c9545b6efb287cdb70535d4e9b284dd10d51441d9b9963d000de6f" }
relative_path "openssl-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
if aix?
env["M4"] = "/opt/freeware/bin/m4"
elsif mac_os_x? && arm?
env["CFLAGS"] << " -Qunused-arguments"
elsif freebsd?
# Should this just be in standard_compiler_flags?
env["LDFLAGS"] += " -Wl,-rpath,#{install_dir}/embedded/lib"
elsif windows?
# XXX: OpenSSL explicitly sets -march=i486 and expects that to be honored.
# It has OPENSSL_IA32_SSE2 controlling whether it emits optimized SSE2 code
# and the 32-bit calling convention involving XMM registers is... vague.
# Do not enable SSE2 generally because the hand optimized assembly will
# overwrite registers that mingw expects to get preserved.
env["CFLAGS"] = "-I#{install_dir}/embedded/include"
env["CPPFLAGS"] = env["CFLAGS"]
env["CXXFLAGS"] = env["CFLAGS"]
end
configure_args = [
"--prefix=#{install_dir}/embedded",
"no-unit-test",
"no-comp",
"no-idea",
"no-mdc2",
"no-rc5",
"no-ssl2",
"no-ssl3",
"no-zlib",
"shared",
]
configure_args += ["--with-fipsdir=#{install_dir}/embedded", "fips"] if fips_mode?
configure_cmd =
if aix?
"perl ./Configure aix64-cc"
elsif mac_os_x?
intel? ? "./Configure darwin64-x86_64-cc" : "./Configure darwin64-arm64-cc no-asm"
elsif smartos?
"/bin/bash ./Configure solaris64-x86_64-gcc -static-libgcc"
elsif omnios?
"/bin/bash ./Configure solaris-x86-gcc"
elsif solaris2?
platform = sparc? ? "solaris64-sparcv9-gcc" : "solaris64-x86_64-gcc"
if version.satisfies?("< 1.1.0")
"/bin/bash ./Configure #{platform} -static-libgcc"
else
"./Configure #{platform} -static-libgcc"
end
elsif windows?
platform = windows_arch_i386? ? "mingw" : "mingw64"
"perl.exe ./Configure #{platform}"
else
prefix =
if linux? && ppc64?
"./Configure linux-ppc64"
elsif linux? && s390x?
# With gcc > 4.3 on s390x there is an error building
# with inline asm enabled
"./Configure linux64-s390x -DOPENSSL_NO_INLINE_ASM"
else
"./config"
end
"#{prefix} disable-gost"
end
patch_env = if aix?
# This enables omnibus to use 'makedepend'
# from fileset 'X11.adt.imake' (AIX install media)
env["PATH"] = "/usr/lpp/X11/bin:#{ENV["PATH"]}"
penv = env.dup
penv["PATH"] = "/opt/freeware/bin:#{env["PATH"]}"
penv
else
env
end
if version.start_with? "1.0"
patch source: "openssl-1.0.1f-do-not-build-docs.patch", env: patch_env
elsif version.start_with? "1.1"
patch source: "openssl-1.1.0f-do-not-install-docs.patch", env: patch_env
end
if version.start_with?("1.0.2") && mac_os_x? && arm?
patch source: "openssl-1.0.2x-darwin-arm64.patch"
end
if version.start_with?("1.0.2") && windows?
# Patch Makefile.org to update the compiler flags/options table for mingw.
patch source: "openssl-1.0.1q-fix-compiler-flags-table-for-msys.patch", env: env
end
# Out of abundance of caution, we put the feature flags first and then
# the crazy platform specific compiler flags at the end.
configure_args << env["CFLAGS"] << env["LDFLAGS"]
configure_command = configure_args.unshift(configure_cmd).join(" ")
command configure_command, env: env, in_msys_bash: true
if version.start_with?("1.0.2") && windows?
patch source: "openssl-1.0.1j-windows-relocate-dll.patch", env: env
end
make "depend", env: env
# make -j N on openssl is not reliable
make "-j #{workers}", env: env
if aix?
# We have to sudo this because you can't actually run slibclean without being root.
# Something in openssl changed in the build process so now it loads the libcrypto
# and libssl libraries into AIX's shared library space during the first part of the
# compile. This means we need to clear the space since it's not being used and we
# can't install the library that is already in use. Ideally we would patch openssl
# to make this not be an issue.
# Bug Ref: http://rt.openssl.org/Ticket/Display.html?id=2986&user=guest&pass=guest
command "sudo /usr/sbin/slibclean", env: env
end
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,40 @@
#
# Copyright 2019 Oregon State University
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-04
name "perl-thread-queue"
default_version "3.13"
dependency "perl"
version "3.13" do
source sha256: "6ba3dacddd2fbb66822b4aa1d11a0a5273cd04c825cb3ff31c20d7037cbfdce8"
end
source url: "http://search.cpan.org/CPAN/authors/id/J/JD/JDHEDDEN/Thread-Queue-#{version}.tar.gz"
relative_path "Thread-Queue-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path).merge(
"INSTALL_BASE" => "#{install_dir}/embedded"
)
command "#{install_dir}/embedded/bin/perl Makefile.PL", env: env
make env: env
make "install", env: env
end

View File

@@ -0,0 +1,74 @@
#
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "perl"
license "Artistic-2.0"
license_file "Artistic"
skip_transitive_dependency_licensing true
default_version "5.34.0"
# versions_list: http://www.cpan.org/src/ filter=*.tar.gz
version("5.34.0") { source sha256: "551efc818b968b05216024fb0b727ef2ad4c100f8cb6b43fab615fa78ae5be9a" }
version("5.32.1") { source sha256: "03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c" }
version("5.30.0") { source sha256: "851213c754d98ccff042caa40ba7a796b2cee88c5325f121be5cbb61bbf975f2" }
version("5.22.1") { source sha256: "2b475d0849d54c4250e9cba4241b7b7291cffb45dfd083b677ca7b5d38118f27" }
version("5.18.1") { source sha256: "655e11a8ffba8853efcdce568a142c232600ed120ac24aaebb4e6efe74e85b2b" }
source url: "http://www.cpan.org/src/5.0/perl-#{version}.tar.gz"
# perl builds perl as libraries into a special directory. We need to include
# that directory in lib_dirs so omnibus can sign them during macOS deep signing.
lib_dirs lib_dirs.concat ["#{install_dir}/embedded/lib/perl5/**"]
relative_path "perl-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
patch source: "perl-#{version}-remove_lnsl.patch", plevel: 1, env: env
if solaris2?
cc_command = "-Dcc='gcc -m64 -static-libgcc'"
elsif aix?
cc_command = "-Dcc='/opt/IBM/xlc/13.1.0/bin/cc_r -q64'"
elsif freebsd? && ohai["os_version"].to_i >= 1000024
cc_command = "-Dcc='clang'"
elsif mac_os_x?
cc_command = "-Dcc='clang'"
else
cc_command = "-Dcc='gcc -static-libgcc'"
end
configure_command = ["sh Configure",
" -de",
" -Dprefix=#{install_dir}/embedded",
" -Duseshrplib",
" -Dusethreads",
" #{cc_command}",
" -Dnoextensions='DB_File GDBM_File NDBM_File ODBM_File'"]
if aix?
configure_command << "-Dmake=gmake"
configure_command << "-Duse64bitall"
end
command configure_command.join(" "), env: env
make "-j #{workers}", env: env
# using the install.perl target lets
# us skip install the manpages
make "install.perl", env: env
end

View File

@@ -0,0 +1,66 @@
#
# Copyright 2013-2014 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# expeditor/ignore: deprecated 2021-05
name "pkg-config"
default_version "0.28"
dependency "libiconv"
dependency "config_guess"
# version_list: url=https://pkgconfig.freedesktop.org/releases/ filter=*.tar.gz
version("0.28") { source sha256: "6b6eb31c6ec4421174578652c7e141fdaae2dabad1021f420d8713206ac1f845" }
source url: "https://pkgconfig.freedesktop.org/releases/pkg-config-#{version}.tar.gz"
relative_path "pkg-config-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
update_config_guess
# pkg-config (at least up to 0.28) includes an older version of
# libcharset/lib/config.charset that doesn't know about openbsd
if openbsd?
patch source: "openbsd-charset.patch", plevel: 1, env: env
end
command "./configure" \
" --prefix=#{install_dir}/embedded" \
" --disable-debug" \
" --disable-host-tool" \
" --with-internal-glib" \
" --with-pc-path=#{install_dir}/embedded/bin/pkgconfig", env: env
# #203: pkg-configs internal glib does not provide a way to pass ldflags.
# Only allows GLIB_CFLAGS and GLIB_LIBS.
# These do not serve our purpose, so we must explicitly
# ./configure in the glib dir, with the Omnibus ldflags.
command "./configure" \
" --prefix=#{install_dir}/embedded" \
" --with-libiconv=gnu", env: env, cwd: "#{project_dir}/glib"
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
# ensure charset.alias gets installed on openbsd else pkg-config will
# exit with byte conversion errors.
if openbsd?
copy "#{project_dir}/glib/glib/libcharset/charset.alias", "#{install_dir}/embedded/lib/charset.alias"
end
end

View File

@@ -0,0 +1,65 @@
# frozen_string_literal: true
# Copyright:: Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "postgresql"
default_version "13.3"
license "PostgreSQL"
license_file "COPYRIGHT"
skip_transitive_dependency_licensing true
dependency "zlib"
dependency "openssl"
dependency "libedit"
dependency "libossp-uuid"
dependency "ncurses"
dependency "config_guess"
# version_list: url=https://ftp.postgresql.org/pub/source/v#{version}/ filter=*.tar.bz2
version("13.3") { source sha256: "3cd9454fa8c7a6255b6743b767700925ead1b9ab0d7a0f9dcb1151010f8eb4a1" }
# Version 12.x will EoL November 14, 2024
version("12.7") { source sha256: "8490741f47c88edc8b6624af009ce19fda4dc9b31c4469ce2551d84075d5d995" }
# Version 9.6 will EoL November 11, 2021
version("9.6.22") { source sha256: "3d32cd101025a0556813397c69feff3df3d63736adb8adeaf365c522f39f2930" }
# Version 9.3 was EoL November 8, 2018 (but used in Supermarket as of 6.2021)
version("9.3.25") { source sha256: "e4953e80415d039ccd33d34be74526a090fd585cf93f296cd9c593972504b6db" }
source url: "https://ftp.postgresql.org/pub/source/v#{version}/postgresql-#{version}.tar.bz2"
relative_path "postgresql-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
update_config_guess(target: "config")
command "./configure" \
" --prefix=#{install_dir}/embedded" \
" --with-libedit-preferred" \
" --with-openssl" \
" --enable-thread-safety" \
" --with-uuid=ossp" \
" --with-includes=#{install_dir}/embedded/include" \
" --with-libraries=#{install_dir}/embedded/lib", env: env
make "world -j #{workers}", env: env
make "install-world", env: env
end

View File

@@ -0,0 +1,31 @@
# frozen_string_literal: true
# Copyright 2021 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "preparation"
description "the steps required to prepare the build"
default_version "1.0.0"
license :project_license
skip_transitive_dependency_licensing true
build do
block do
touch "#{install_dir}/embedded/lib/.gitkeep"
touch "#{install_dir}/embedded/bin/.gitkeep"
touch "#{install_dir}/bin/.gitkeep"
end
end

View File

@@ -0,0 +1,27 @@
name "python"
description "Python"
default_version "3.9.6"
license_file "LICENSE"
skip_transitive_dependency_licensing true
source url: "https://www.python.org/ftp/python/#{version}/Python-#{version}.tgz"
version("3.9.6") do
source sha256: "d0a35182e19e416fc8eae25a3dcd4d02d4997333e4ad1f2eee6010aadc3fe866"
end
dependency "bzip2"
dependency "zlib"
dependency "openssl"
dependency "ncurses"
dependency "libffi"
relative_path "Python-#{version}"
build do
env = with_standard_compiler_flags(with_embedded_path)
command "./configure --prefix=#{install_dir}/embedded", env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end

View File

@@ -0,0 +1,41 @@
# frozen_string_literal: true
# Copyright 2021 FireZone
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "wireguard-tools"
description "wireguard userspace utilities"
default_version "1.0.20210424"
default_src_url = "https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-#{version}.zip"
version "1.0.20210424" do
source url: default_src_url, sha256: "1ad170ded2d66d7c5a02fc2fd5ac3e195ec1c98133986f2d8223ed5a72c8877f"
end
relative_path "wireguard-tools-#{version}/src"
license "GPL-2.0"
build do
env = with_standard_compiler_flags(with_embedded_path).merge(
"PREFIX" => "#{install_dir}/embedded",
"RUNSTATEDIR" => "#{install_dir}/embedded/var/run",
"SYSCONFDIR" => "#{install_dir}/embedded/etc",
"DESTDIR" => "#{install_dir}/embedded"
)
make "-j #{workers}", env: env
make "install", env: env
end

View File

@@ -0,0 +1,83 @@
#
# Copyright 2012-2018 Chef Software, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
name "zlib"
default_version "1.2.11"
# version_list: url=https://zlib.net/fossils/ filter=*.tar.gz
version("1.2.11") { source sha256: "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1" }
version("1.2.8") { source sha256: "36658cb768a54c1d4dec43c3116c27ed893e88b02ecfcb44f2166f9c0b7f2a0d" }
version("1.2.6") { source sha256: "21235e08552e6feba09ea5e8d750805b3391c62fb81c71a235c0044dc7a8a61b" }
source url: "https://zlib.net/fossils/zlib-#{version}.tar.gz"
license "Zlib"
license_file "README"
skip_transitive_dependency_licensing true
relative_path "zlib-#{version}"
build do
if windows?
env = with_standard_compiler_flags(with_embedded_path)
patch source: "zlib-windows-relocate.patch", env: env
# We can't use the top-level Makefile. Instead, the developers have made
# an organic, artisanal, hand-crafted Makefile.gcc for us which takes a few
# variables.
env["BINARY_PATH"] = "/bin"
env["LIBRARY_PATH"] = "/lib"
env["INCLUDE_PATH"] = "/include"
env["DESTDIR"] = "#{install_dir}/embedded"
make_args = [
"-fwin32/Makefile.gcc",
"SHARED_MODE=1",
"CFLAGS=\"#{env["CFLAGS"]} -Wall\"",
"ASFLAGS=\"#{env["CFLAGS"]} -Wall\"",
"LDFLAGS=\"#{env["LDFLAGS"]}\"",
# The win32 makefile for zlib does not handle parallel make correctly.
# In particular, see its rule for IMPLIB and SHAREDLIB. The ld step in
# SHAREDLIB will generate both the dll and the dll.a files. The step to
# strip the dll occurs next but since the dll.a file is already present,
# make will attempt to link example_d.exe and minigzip_d.exe in parallel
# with the strip step - causing gcc to freak out when a source file is
# rewritten part way through the linking stage.
# "-j #{workers}",
]
make(*make_args, env: env)
make("install", *make_args, env: env)
else
# We omit the omnibus path here because it breaks mac_os_x builds by picking
# up the embedded libtool instead of the system libtool which the zlib
# configure script cannot handle.
# TODO: Do other OSes need this? Is this strictly a mac thing?
env = with_standard_compiler_flags
if freebsd?
# FreeBSD 10+ gets cranky if zlib is not compiled in a
# position-independent way.
env["CFLAGS"] << " -fPIC"
end
configure env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end
end

56
omnibus/omnibus.rb Normal file
View File

@@ -0,0 +1,56 @@
# frozen_string_literal: true
# This file is used to configure the firezone project. It contains
# some minimal configuration examples for working with Omnibus. For a full list
# of configurable options, please see the documentation for +omnibus/config.rb+.
#
# Build internally
# ------------------------------
# By default, Omnibus uses system folders (like +/var+ and +/opt+) to build and
# cache components. If you would to build everything internally, you can
# uncomment the following options. This will prevent the need for root
# permissions in most cases.
#
# Uncomment this line to change the default base directory to "local"
# -------------------------------------------------------------------
base_dir("/tmp/omnibus-local")
#
# Alternatively you can tune the individual values
# ------------------------------------------------
# cache_dir './local/omnibus/cache'
# git_cache_dir './local/omnibus/cache/git_cache'
# source_dir './local/omnibus/src'
# build_dir './local/omnibus/build'
# package_dir './local/omnibus/pkg'
# package_tmp './local/omnibus/pkg-tmp'
# Disable git caching
# ------------------------------
# use_git_caching false
# Enable S3 asset caching
# ------------------------------
# use_s3_caching true
# s3_access_key ENV['AWS_ACCESS_KEY_ID']
# s3_secret_key ENV['AWS_SECRET_ACCESS_KEY']
# s3_profile ENV['AWS_S3_PROFILE']
# s3_iam_role_arn ENV['S3_IAM_ROLE_ARN']
# s3_bucket ENV['AWS_S3_BUCKET']
# Customize compiler bits
# ------------------------------
# solaris_compiler 'gcc'
# build_retries 5
# fetcher_read_timeout 120
# fetcher_retries 5
# Load additional software
# ------------------------------
# software_gems ['omnibus-software', 'my-company-software']
# local_software_dirs ['/path/to/local/software']
# Windows architecture defaults
# ------------------------------
windows_arch %w[x86 x64].include?((ENV["OMNIBUS_WINDOWS_ARCH"] || "").downcase) ?
ENV["OMNIBUS_WINDOWS_ARCH"].downcase.to_sym : :x86

View File

@@ -0,0 +1,17 @@
#!/bin/sh
#
# Perform necessary firezone setup steps
# after package is installed.
#
PROGNAME=`basename $0`
error_exit()
{
echo "${PROGNAME}: ${1:-"Unknown Error"}" 1>&2
exit 1
}
echo "Thank you for installing firezone!"
exit 0

View File

@@ -0,0 +1,9 @@
#!/bin/sh
#
# Perform necessary firezone removal steps
# after package is uninstalled.
#
echo "firezone has been uninstalled!"
exit 0

View File

@@ -0,0 +1,7 @@
#!/bin/sh
#
# Perform necessary firezone setup steps
# before package is installed.
#
echo "You're about to install firezone!"

View File

@@ -0,0 +1,15 @@
#!/bin/sh
#
# Perform necessary firezone setup steps
# prior to uninstalling package.
#
PROGNAME=`basename $0`
error_exit()
{
echo "${PROGNAME}: ${1:-"Unknown Error"}" 1>&2
exit 1
}
exit 0

View File

@@ -34,7 +34,43 @@ else
download_release
fi
echo "Extracting package to /opt/firezone..."
tar -zxf $file -C /opt/
echo "Setting up FireZone..."
echo
echo "FireZone installed!"
if id firezone &>/dev/null; then
echo "firezone user exists... not creating."
else
echo "Creating system user firezone"
useradd --system firezone
fi
echo "Extracting package to /opt/firezone..."
echo
tar -zxf $file -C /opt/
chmod -R firezone:firezone /opt/firezone
# Create DB user
echo "Creating DB user..."
hostname=$(hostname)
db_user=firezone
db_password="$(openssl rand -hex 16)"
res=$(su postgres -c "psql -c \"SELECT 1 FROM pg_roles WHERE rolname = '${db_user}';\"")
if [[ $res == *"0 rows"* ]]; then
su postgres -c "psql -c \"CREATE ROLE ${db_user} WITH LOGIN PASSWORD '${db_password}';\""
else
echo "${db_user} role found in DB"
fi
# Create DB if not exists
db_name=firezone
res=$(su postgres -c "psql -c \"SELECT 1 FROM pg_database WHERE datname = '${db_name}';\"")
if [[ $res == *"0 rows"* ]]; then
su postgres -c "psql -c \"CREATE DATABASE firezone;\" || true"
else
echo "${db_name} exists; not creating"
fi
echo "FireZone installed successfully!"