1#!/bin/bash -e 2# 3# Copyright (c) 2010-2012 Apple Inc. All rights reserved. 4# 5# @APPLE_APACHE_LICENSE_HEADER_START@ 6# 7# Licensed under the Apache License, Version 2.0 (the "License"); 8# you may not use this file except in compliance with the License. 9# You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, software 14# distributed under the License is distributed on an "AS IS" BASIS, 15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16# See the License for the specific language governing permissions and 17# limitations under the License. 18# 19# @APPLE_APACHE_LICENSE_HEADER_END@ 20# 21 22if [ "$ACTION" = installhdrs ]; then exit 0; fi 23if [ "${RC_ProjectName%_Sim}" != "${RC_ProjectName}" ]; then exit 0; fi 24 25mkdir -p "$DSTROOT"/usr/share/man/man3 || true 26mkdir -p "$DSTROOT"/usr/local/share/man/man3 || true 27 28# Copy man pages 29cd "$SRCROOT"/man 30BASE_PAGES="dispatch.3 dispatch_after.3 dispatch_api.3 dispatch_apply.3 \ 31 dispatch_async.3 dispatch_group_create.3 dispatch_object.3 \ 32 dispatch_once.3 dispatch_queue_create.3 dispatch_semaphore_create.3 \ 33 dispatch_source_create.3 dispatch_time.3 dispatch_data_create.3 \ 34 dispatch_io_create.3 dispatch_io_read.3 dispatch_read.3" 35 36PRIVATE_PAGES="dispatch_benchmark.3" 37 38cp ${BASE_PAGES} "$DSTROOT"/usr/share/man/man3 39cp ${PRIVATE_PAGES} "$DSTROOT"/usr/local/share/man/man3 40 41# Make hard links (lots of hard links) 42 43cd "$DSTROOT"/usr/local/share/man/man3 44ln -f dispatch_benchmark.3 dispatch_benchmark_f.3 45chown ${INSTALL_OWNER}:${INSTALL_GROUP} $PRIVATE_PAGES 46chmod $INSTALL_MODE_FLAG $PRIVATE_PAGES 47 48cd $DSTROOT/usr/share/man/man3 49 50chown ${INSTALL_OWNER}:${INSTALL_GROUP} $BASE_PAGES 51chmod $INSTALL_MODE_FLAG $BASE_PAGES 52 53ln -f dispatch_after.3 dispatch_after_f.3 54ln -f dispatch_apply.3 dispatch_apply_f.3 55ln -f dispatch_once.3 dispatch_once_f.3 56 57for m in dispatch_async_f dispatch_sync dispatch_sync_f; do 58 ln -f dispatch_async.3 ${m}.3 59done 60 61for m in dispatch_group_enter dispatch_group_leave dispatch_group_wait \ 62 dispatch_group_async dispatch_group_async_f dispatch_group_notify \ 63 dispatch_group_notify_f; do 64 ln -f dispatch_group_create.3 ${m}.3 65done 66 67for m in dispatch_retain dispatch_release dispatch_suspend dispatch_resume \ 68 dispatch_get_context dispatch_set_context dispatch_set_finalizer_f; do 69 ln -f dispatch_object.3 ${m}.3 70done 71 72for m in dispatch_semaphore_signal dispatch_semaphore_wait; do 73 ln -f dispatch_semaphore_create.3 ${m}.3 74done 75 76for m in dispatch_get_current_queue dispatch_main dispatch_get_main_queue \ 77 dispatch_get_global_queue dispatch_queue_get_label \ 78 dispatch_set_target_queue; do 79 ln -f dispatch_queue_create.3 ${m}.3 80done 81 82for m in dispatch_source_set_event_handler dispatch_source_set_event_handler_f \ 83 dispatch_source_set_registration_handler dispatch_source_set_registration_handler_f \ 84 dispatch_source_set_cancel_handler dispatch_source_set_cancel_handler_f \ 85 dispatch_source_cancel dispatch_source_testcancel \ 86 dispatch_source_get_handle dispatch_source_get_mask \ 87 dispatch_source_get_data dispatch_source_merge_data \ 88 dispatch_source_set_timer; do 89 ln -f dispatch_source_create.3 ${m}.3 90done 91 92ln -f dispatch_time.3 dispatch_walltime.3 93 94for m in dispatch_data_create_concat dispatch_data_create_subrange \ 95 dispatch_data_create_map dispatch_data_apply \ 96 dispatch_data_copy_region dispatch_data_get_size; do 97 ln -f dispatch_data_create.3 ${m}.3 98done 99 100for m in dispatch_io_create_with_path dispatch_io_set_high_water \ 101 dispatch_io_set_low_water dispatch_io_set_interval \ 102 dispatch_io_close dispatch_io_barrier; do 103 ln -f dispatch_io_create.3 ${m}.3 104done 105 106ln -f dispatch_io_read.3 dispatch_io_write.3 107 108ln -f dispatch_read.3 dispatch_write.3 109