1
0
Files
gcc-14/debian/rules.d/binary-libobjc.mk
Konstantin Demin c2c1923c7b initial import from Debian
version: 14.3.0-5
commit: bee30ab0fff2fd6af94c62376c8aa4221bb831e0
2025-08-11 15:00:09 +03:00

138 lines
3.5 KiB
Makefile

ifeq ($(with_libobjc),yes)
$(lib_binaries) += libobjc
endif
ifeq ($(with_objcdev),yes)
$(lib_binaries) += libobjc-dev
endif
ifeq ($(with_lib64objc),yes)
$(lib_binaries) += lib64objc
endif
ifeq ($(with_lib64objcdev),yes)
$(lib_binaries) += lib64objc-dev
endif
ifeq ($(with_lib32objc),yes)
$(lib_binaries) += lib32objc
endif
ifeq ($(with_lib32objcdev),yes)
$(lib_binaries) += lib32objc-dev
endif
ifeq ($(with_libn32objc),yes)
$(lib_binaries) += libn32objc
endif
ifeq ($(with_libn32objcdev),yes)
$(lib_binaries) += libn32objc-dev
endif
ifeq ($(with_libx32objc),yes)
$(lib_binaries) += libx32objc
endif
ifeq ($(with_libx32objcdev),yes)
$(lib_binaries) += libx32objc-dev
endif
files_lobjcdev= \
$(gcc_lib_dir)/include/objc
files_lobjc = \
$(usr_lib$(2))/libobjc.so.*
ifeq ($(with_objc_gc),yes)
files_lobjc += \
$(usr_lib$(2))/libobjc_gc.so.*
endif
define __do_libobjc
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_l) $(d_d)
dh_installdirs -p$(p_l) \
$(usr_lib$(2))
$(dh_compat2) dh_movefiles -p$(p_l) \
$(files_lobjc)
debian/dh_doclink -p$(p_l) $(p_lbase)
$(if $(with_dbg),debian/dh_doclink -p$(p_d) $(p_lbase))
$(call do_strip_lib_dbg, $(p_l), $(p_d), $(v_dbg),,)
rm -f debian/$(p_l).symbols
$(if $(2),
ln -sf libobjc.symbols debian/$(p_l).symbols ,
fgrep -v libobjc.symbols.gc debian/libobjc.symbols > debian/$(p_l).symbols
)
$(cross_makeshlibs) dh_makeshlibs $(ldconfig_arg) -p$(p_l) \
-- -a$(call mlib_to_arch,$(2)) || echo XXXXXXXXXXXXXX ERROR $(p_l)
rm -f debian/$(p_l).symbols
$(call cross_mangle_shlibs,$(p_l))
$(ignshld)DIRNAME=$(subst n,,$(2)) $(cross_shlibdeps) dh_shlibdeps -p$(p_l) \
$(call shlibdirs_to_search,$(subst objc$(OBJC_SONAME),gcc-s$(GCC_SONAME),$(p_l)),$(2)) \
$(if $(filter yes, $(with_common_libs)),,-- -Ldebian/shlibs.common$(2))
$(call cross_mangle_substvars,$(p_l))
echo $(p_l) $(if $(with_dbg), $(p_d)) >> debian/$(lib_binaries)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
endef
define __do_libobjc_dev
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_l)
dh_installdirs -p$(p_l) \
$(gcc_lib_dir$(2))
$(dh_compat2) dh_movefiles -p$(p_l) \
$(files_lobjcdev)
$(call install_gcc_lib,libobjc,$(OBJC_SONAME),$(2),$(p_l))
$(if $(filter yes,$(with_objc_gc)),
$(if $(2),,
dh_link -p$(p_l) \
/$(usr_lib$(2))/libobjc_gc.so.$(OBJC_SONAME) \
/$(gcc_lib_dir$(2))/libobjc_gc.so
))
debian/dh_doclink -p$(p_l) $(p_lbase)
echo $(p_l) >> debian/$(lib_binaries)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
endef
# ----------------------------------------------------------------------
do_libobjc = $(call __do_libobjc,lib$(1)objc$(OBJC_SONAME),$(1))
do_libobjc_dev = $(call __do_libobjc_dev,lib$(1)objc-$(BASE_VERSION)-dev,$(1))
$(binary_stamp)-libobjc: $(install_stamp)
$(call do_libobjc,)
$(binary_stamp)-lib64objc: $(install_stamp)
$(call do_libobjc,64)
$(binary_stamp)-lib32objc: $(install_stamp)
$(call do_libobjc,32)
$(binary_stamp)-libn32objc: $(install_stamp)
$(call do_libobjc,n32)
$(binary_stamp)-libx32objc: $(install_stamp)
$(call do_libobjc,x32)
$(binary_stamp)-libobjc-dev: $(install_stamp)
$(call do_libobjc_dev,)
$(binary_stamp)-lib64objc-dev: $(install_stamp)
$(call do_libobjc_dev,64)
$(binary_stamp)-lib32objc-dev: $(install_stamp)
$(call do_libobjc_dev,32)
$(binary_stamp)-libx32objc-dev: $(install_stamp)
$(call do_libobjc_dev,x32)
$(binary_stamp)-libn32objc-dev: $(install_stamp)
$(call do_libobjc_dev,n32)