make/devkit/createPandocBundle.sh
author herrick
Thu, 28 Mar 2019 13:49:38 -0400
branchJDK-8200758-branch
changeset 57292 7a683c461b80
parent 52917 0c637249d934
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     1
#!/bin/bash -e
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     2
#
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
     3
# Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     4
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     5
#
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     6
# This code is free software; you can redistribute it and/or modify it
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     7
# under the terms of the GNU General Public License version 2 only, as
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     8
# published by the Free Software Foundation.  Oracle designates this
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
     9
# particular file as subject to the "Classpath" exception as provided
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    10
# by Oracle in the LICENSE file that accompanied this code.
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    11
#
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    12
# This code is distributed in the hope that it will be useful, but WITHOUT
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    13
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    14
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    15
# version 2 for more details (a copy is included in the LICENSE file that
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    16
# accompanied this code).
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    17
#
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    18
# You should have received a copy of the GNU General Public License version
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    19
# 2 along with this work; if not, write to the Free Software Foundation,
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    20
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    21
#
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    22
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    23
# or visit www.oracle.com if you need additional information or have any
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    24
# questions.
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    25
#
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    26
# Create a bundle in the current directory, containing what's needed to run
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    27
# the 'pandoc' program by the OpenJDK build.
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    28
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    29
TMPDIR=`mktemp -d -t pandocbundle-XXXX`
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    30
trap "rm -rf \"$TMPDIR\"" EXIT
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    31
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    32
ORIG_DIR=`pwd`
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    33
cd "$TMPDIR"
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    34
PANDOC_VERSION=2.3.1
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    35
PACKAGE_VERSION=1.0
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    36
TARGET_PLATFORM=linux_x64
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    37
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    38
if [[ $TARGET_PLATFORM == linux_x64 ]] ; then
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    39
  PANDOC_PLATFORM=linux
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    40
  PANDOC_SUFFIX=tar.gz
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    41
elif [[ $TARGET_PLATFORM == macosx_x64 ]] ; then
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    42
  PANDOC_PLATFORM=macOS
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    43
  PANDOC_SUFFIX=zip
52917
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    44
elif [[ $TARGET_PLATFORM == windows_x64 ]] ; then
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    45
  PANDOC_PLATFORM=windows-x86_64
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    46
  PANDOC_SUFFIX=zip
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    47
else
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    48
  echo "Unknown platform"
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    49
  exit 1
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    50
fi
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    51
BUNDLE_NAME=pandoc-$TARGET_PLATFORM-$PANDOC_VERSION+$PACKAGE_VERSION.tar.gz
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    52
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    53
wget https://github.com/jgm/pandoc/releases/download/$PANDOC_VERSION/pandoc-$PANDOC_VERSION-$PANDOC_PLATFORM.$PANDOC_SUFFIX
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    54
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    55
mkdir tmp
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    56
cd tmp
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    57
if [[ $PANDOC_SUFFIX == zip ]]; then
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    58
  unzip ../pandoc-$PANDOC_VERSION-$PANDOC_PLATFORM.$PANDOC_SUFFIX
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    59
else
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    60
  tar xzf ../pandoc-$PANDOC_VERSION-$PANDOC_PLATFORM.$PANDOC_SUFFIX
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    61
fi
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    62
cd ..
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    63
52714
2e52aa822c57 8178317: Create man pages using pandoc from markdown sources
ihse
parents: 44734
diff changeset
    64
mkdir pandoc
52917
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    65
if [[ $TARGET_PLATFORM == windows_x64 ]] ; then
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    66
  cp tmp/pandoc-$PANDOC_VERSION-$PANDOC_PLATFORM/pandoc.exe pandoc
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    67
  chmod +x pandoc/pandoc.exe
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    68
else
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    69
  cp tmp/pandoc-$PANDOC_VERSION/bin/pandoc pandoc
0c637249d934 8214780: Create pandoc package for Windows
ihse
parents: 52714
diff changeset
    70
fi
44734
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    71
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    72
tar -cvzf ../$BUNDLE_NAME pandoc
70bbd6884287 8179022: Add serialization spec as markdown
ihse
parents:
diff changeset
    73
cp ../$BUNDLE_NAME "$ORIG_DIR"