LinkTarget.mk (1bb309c6) LinkTarget.mk (88fe4d89)
1#**************************************************************
2#
3# Licensed to the Apache Software Foundation (ASF) under one
4# or more contributor license agreements. See the NOTICE file
5# distributed with this work for additional information
6# regarding copyright ownership. The ASF licenses this file
7# to you under the Apache License, Version 2.0 (the
8# "License"); you may not use this file except in compliance

--- 633 unchanged lines hidden (view full) ---

642
643endef
644
645define gb_LinkTarget_add_bison_files
646$(foreach bisonfile,$(2),$(call gb_LinkTarget_add_bison_file,$(1),$(bisonfile)))
647
648endef
649
1#**************************************************************
2#
3# Licensed to the Apache Software Foundation (ASF) under one
4# or more contributor license agreements. See the NOTICE file
5# distributed with this work for additional information
6# regarding copyright ownership. The ASF licenses this file
7# to you under the Apache License, Version 2.0 (the
8# "License"); you may not use this file except in compliance

--- 633 unchanged lines hidden (view full) ---

642
643endef
644
645define gb_LinkTarget_add_bison_files
646$(foreach bisonfile,$(2),$(call gb_LinkTarget_add_bison_file,$(1),$(bisonfile)))
647
648endef
649
650
651
652gb_FlexTarget_get_source = $(SRCDIR)/$(1).ll
653
654# Flex-generated .cxx files are always #include'd into in-module files,
655# and aren't compiled, so they effectively act as generated headers, not generated .cxx.
656
657define gb_LinkTarget_add_flex_file
658
659$(call gb_LinkTarget_get_external_headers_target,$(1)) :| \
660 $(call gb_FlexTarget_get_target,$(1),$(2))
661
662$(call gb_LinkTarget_get_headers_target,$(1)) \
663$(call gb_LinkTarget_get_target,$(1)) : INCLUDE += -I$(dir $(call gb_FlexTarget_get_target,$(1),$(2)))
664ifeq ($(gb_FULLDEPS),$(true))
665$(call gb_LinkTarget_get_dep_target,$(1)) : INCLUDE += -I$(dir $(call gb_FlexTarget_get_target,$(1),$(2)))
666endif
667
668$(call gb_FlexTarget_get_target,$(1),$(2)) : $(call gb_FlexTarget_get_source,$(2))
669 mkdir -p $(dir $(call gb_FlexTarget_get_target,$(1),$(2))) && \
670 tr -d "\015" < $(call gb_FlexTarget_get_source,$(2)) > $(dir $(call gb_FlexTarget_get_target,$(1),$(2)))/stripped_$(notdir $(call gb_FlexTarget_get_source,$(2))) && \
671 flex -o$(call gb_FlexTarget_get_target,$(1),$(2)) $(dir $(call gb_FlexTarget_get_target,$(1),$(2)))/stripped_$(notdir $(call gb_FlexTarget_get_source,$(2)))
672
673endef
674
675define gb_LinkTarget_add_flex_files
676$(foreach flexfile,$(2),$(call gb_LinkTarget_add_flex_file,$(1),$(flexfile)))
677
678endef
679
680
681
682
650define gb_LinkTarget_add_libs
651$(call gb_LinkTarget_get_target,$(1)) : LIBS += $(2)
652endef
653
654define gb_LinkTarget_add_linked_libs
655ifneq (,$$(filter-out $(gb_Library_KNOWNLIBS),$(2)))
656$$(eval $$(call gb_Output_info,currently known libraries are: $(sort $(gb_Library_KNOWNLIBS)),ALL))
657$$(eval $$(call gb_Output_error,Cannot link against library/libraries $$(filter-out $(gb_Library_KNOWNLIBS),$(2)). Libraries must be registered in Repository.mk))

--- 247 unchanged lines hidden ---
683define gb_LinkTarget_add_libs
684$(call gb_LinkTarget_get_target,$(1)) : LIBS += $(2)
685endef
686
687define gb_LinkTarget_add_linked_libs
688ifneq (,$$(filter-out $(gb_Library_KNOWNLIBS),$(2)))
689$$(eval $$(call gb_Output_info,currently known libraries are: $(sort $(gb_Library_KNOWNLIBS)),ALL))
690$$(eval $$(call gb_Output_error,Cannot link against library/libraries $$(filter-out $(gb_Library_KNOWNLIBS),$(2)). Libraries must be registered in Repository.mk))

--- 247 unchanged lines hidden ---