153e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# Copyright (C) 2013 The Android Open Source Project
253e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#
353e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# Licensed under the Apache License, Version 2.0 (the "License");
453e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# you may not use this file except in compliance with the License.
553e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# You may obtain a copy of the License at
653e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#
753e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#      http://www.apache.org/licenses/LICENSE-2.0
853e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#
953e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# Unless required by applicable law or agreed to in writing, software
1053e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# distributed under the License is distributed on an "AS IS" BASIS,
1153e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1253e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# See the License for the specific language governing permissions and
1353e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# limitations under the License.
1453e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#
1553e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#
1653e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot
1753e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_PATH := $(call my-dir)
1853e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot
1953e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# build for the host JVM
2053e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#-----------------------
2153e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabotinclude $(CLEAR_VARS)
2253e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_SRC_FILES := $(call all-java-files-under, main/src)
2353e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_MODULE := objenesis-host
2453e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_MODULE_TAGS := optional
2553e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabotinclude $(BUILD_HOST_JAVA_LIBRARY)
2653e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot
2753e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot#-------------------------------
2853e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# build a target jar
2953e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot
3053e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabotinclude $(CLEAR_VARS)
3153e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot
3253e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_SRC_FILES := $(call all-java-files-under, main/src)
3353e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# ideally this should be called just 'objenesis', but that name is
3453e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabot# already used by a prebuilt host lib.
3553e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_MODULE := objenesis-target
367d40a27fc9b875170e4bd4d37f6af4ef9f6e2048Brett Chabot#  SDK 10 needed for ObjectStreamClass lookupAny
377d40a27fc9b875170e4bd4d37f6af4ef9f6e2048Brett ChabotLOCAL_SDK_VERSION := 10
3853e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett ChabotLOCAL_MODULE_TAGS := optional
3953e01d08c12b84e8d7e1954fd7d89d18f49eeb69Brett Chabotinclude $(BUILD_STATIC_JAVA_LIBRARY)
40e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
41e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson#--------------------------------
42e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson# Builds the Objenesis TCK as a device-targeted library
43e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
44e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinsoninclude $(CLEAR_VARS)
45e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_MODULE := objenesis-tck-target
46e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_MODULE_TAGS := tests
47e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
48e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_STATIC_JAVA_LIBRARIES := objenesis-target
49e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_SRC_FILES := $(call all-java-files-under, tck/src)
50e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_JAVA_RESOURCE_DIRS := tck/src
51e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinsoninclude $(BUILD_STATIC_JAVA_LIBRARY)
52e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
53e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson# -------------------------------
54e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson# Builds the deployable Objenesis TCK for Android
55e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson# To build and run:
56e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson#    make APP-ObjenesisTck
57e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson#    adb install -r out/target/product/generic/data/app/ObjenesisTck.apk
58e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson#    adb shell am instrument -w org.objenesis.tck.android/.TckInstrumentation
59e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
60e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_PATH := $(LOCAL_PATH)/tck-android
61e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinsoninclude $(CLEAR_VARS)
62e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_PACKAGE_NAME := ObjenesisTck
63e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_MODULE_TAGS := tests
64e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_CERTIFICATE := platform
65e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinson
66e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_STATIC_JAVA_LIBRARIES := objenesis-tck-target
67e8740d2e04179cd15a85dd055cac90b5aeb52589Ian ParkinsonLOCAL_SRC_FILES := $(call all-java-files-under, src)
68e8740d2e04179cd15a85dd055cac90b5aeb52589Ian Parkinsoninclude $(BUILD_PACKAGE)
69