| #!/bin/bash |
| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You 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. |
| |
| # This script is meant to include only libraries in the main hive package not already included in other hive subpackages. |
| # It does this by listing the contents of hive/lib into a temporary file and then it will |
| # lists all libs in in the .install files for other subpackages, adding those lines to a tmp exclude file |
| # It will then do a grep diff between the list of hive/lib and the exclude file and only include lines not found in the exclude |
| # It then reads what should be included to stdout as well as some files that should also be in the package, which is listed in hive.install.include. |
| for i in debian/tmp/usr/lib/hive/lib/* |
| do |
| echo ${i} >> debian/hive.include |
| done |
| |
| get_excludes () { |
| while read line |
| do |
| echo ${line:0:(-5)} >> debian/hive.exclude # get rid of *.jar and add to excludes list |
| done <$1 # Read in .install file for subpackage |
| } |
| |
| # Exclude all libraries listed in these files. |
| get_excludes "debian/hive-jdbc.install" |
| get_excludes "debian/hive-hbase.install" |
| |
| # Exclude the libraries from above and put the remaining libs in hive.install. |
| grep -Fv -f debian/hive.exclude debian/hive.include |
| # Add extra files that aren't libs. |
| cat debian/hive.install.include |