Home | History | Annotate | Download | only in common
      1 #
      2 # Mesa 3-D graphics library
      3 #
      4 # Copyright (C) 2011 Intel Corporation
      5 #
      6 # Permission is hereby granted, free of charge, to any person obtaining a
      7 # copy of this software and associated documentation files (the "Software"),
      8 # to deal in the Software without restriction, including without limitation
      9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
     10 # and/or sell copies of the Software, and to permit persons to whom the
     11 # Software is furnished to do so, subject to the following conditions:
     12 #
     13 # The above copyright notice and this permission notice shall be included
     14 # in all copies or substantial portions of the Software.
     15 #
     16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
     22 # DEALINGS IN THE SOFTWARE.
     23 #
     24 
     25 #
     26 # Build libmesa_dri_common
     27 #
     28 
     29 LOCAL_PATH := $(call my-dir)
     30 include $(CLEAR_VARS)
     31 
     32 include $(LOCAL_PATH)/Makefile.sources
     33 
     34 LOCAL_MODULE := libmesa_dri_common
     35 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
     36 
     37 intermediates := $(call local-generated-sources-dir)
     38 
     39 LOCAL_C_INCLUDES := \
     40     $(MESA_DRI_C_INCLUDES)
     41 
     42 LOCAL_EXPORT_C_INCLUDE_DIRS := \
     43     $(LOCAL_PATH) \
     44     $(intermediates)
     45 
     46 LOCAL_SRC_FILES := \
     47 	$(DRI_COMMON_FILES) \
     48 	$(XMLCONFIG_FILES)
     49 
     50 MESA_DRI_OPTIONS_H := $(intermediates)/xmlpool/options.h
     51 LOCAL_GENERATED_SOURCES := $(MESA_DRI_OPTIONS_H)
     52 
     53 #
     54 # Generate options.h from gettext translations.
     55 #
     56 
     57 MESA_DRI_OPTIONS_LANGS := de es nl fr sv
     58 POT := $(intermediates)/xmlpool.pot
     59 
     60 $(POT): $(LOCAL_PATH)/xmlpool/t_options.h
     61 	@mkdir -p $(dir $@)
     62 	xgettext -L C --from-code utf-8 -o $@ $<
     63 
     64 $(intermediates)/xmlpool/%.po: $(LOCAL_PATH)/xmlpool/%.po $(POT)
     65 	lang=$(basename $(notdir $@)); \
     66 	mkdir -p $(dir $@); \
     67 	if [ -f $< ]; then \
     68 		msgmerge -o $@ $^; \
     69 	else \
     70 		msginit -i $(POT) \
     71 			-o $@ \
     72 			--locale=$$lang \
     73 			--no-translator; \
     74 		sed -i -e 's/charset=.*\\n/charset=UTF-8\\n/' $@; \
     75 	fi
     76 
     77 PRIVATE_SCRIPT := $(LOCAL_PATH)/xmlpool/gen_xmlpool.py
     78 PRIVATE_LOCALEDIR := $(intermediates)/xmlpool
     79 PRIVATE_TEMPLATE_HEADER := $(LOCAL_PATH)/xmlpool/t_options.h
     80 PRIVATE_MO_FILES := $(MESA_DRI_OPTIONS_LANGS:%=$(intermediates)/xmlpool/%/LC_MESSAGES/options.mo)
     81 
     82 LOCAL_GENERATED_SOURCES += $(PRIVATE_MO_FILES)
     83 
     84 $(PRIVATE_MO_FILES): $(intermediates)/xmlpool/%/LC_MESSAGES/options.mo: $(intermediates)/xmlpool/%.po
     85 	mkdir -p $(dir $@)
     86 	msgfmt -o $@ $<
     87 
     88 $(LOCAL_GENERATED_SOURCES): PRIVATE_PYTHON := $(MESA_PYTHON2)
     89 $(LOCAL_GENERATED_SOURCES): PRIVATE_CUSTOM_TOOL = $(PRIVATE_PYTHON) $^ $(PRIVATE_TEMPLATE_HEADER) \
     90 		$(PRIVATE_LOCALEDIR) $(MESA_DRI_OPTIONS_LANGS) > $@
     91 
     92 $(MESA_DRI_OPTIONS_H): $(PRIVATE_SCRIPT) $(PRIVATE_TEMPLATE_HEADER) $(PRIVATE_MO_FILES)
     93 	$(transform-generated-source)
     94 
     95 include $(MESA_COMMON_MK)
     96 include $(BUILD_STATIC_LIBRARY)
     97 
     98 #
     99 # Build libmesa_megadriver_stub
    100 #
    101 
    102 include $(CLEAR_VARS)
    103 include $(LOCAL_PATH)/Makefile.sources
    104 
    105 LOCAL_MODULE := libmesa_megadriver_stub
    106 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
    107 LOCAL_C_INCLUDES := \
    108     $(MESA_DRI_C_INCLUDES)
    109 
    110 LOCAL_SRC_FILES := $(megadriver_stub_FILES)
    111 
    112 include $(MESA_COMMON_MK)
    113 include $(BUILD_STATIC_LIBRARY)
    114