[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[UNIKRAFT/PYTORCH PATCH 1/4] Add Makefile



Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxx>
---
 Makefile.uk | 1793 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 1793 insertions(+)
 create mode 100644 Makefile.uk

diff --git a/Makefile.uk b/Makefile.uk
new file mode 100644
index 0000000..78ed0f9
--- /dev/null
+++ b/Makefile.uk
@@ -0,0 +1,1793 @@
+#  pytorch config file
+#
+#  Authors: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxx>
+#
+#  Copyright (c) 2020, University Politehnica of Bucharest. All rights 
reserved.
+#
+#  Redistribution and use in source and binary forms, with or without
+#  modification, are permitted provided that the following conditions
+#  are met:
+#
+#  1. Redistributions of source code must retain the above copyright
+#     notice, this list of conditions and the following disclaimer.
+#  2. Redistributions in binary form must reproduce the above copyright
+#     notice, this list of conditions and the following disclaimer in the
+#     documentation and/or other materials provided with the distribution.
+#  3. Neither the name of the copyright holder nor the names of its
+#     contributors may be used to endorse or promote products derived from
+#     this software without specific prior written permission.
+#
+#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+#  POSSIBILITY OF SUCH DAMAGE.
+#
+#  THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY.
+
+################################################################################
+# Library registration
+################################################################################
+$(eval $(call addlib_s,libpytorch,$(CONFIG_LIBPYTORCH)))
+
+################################################################################
+# Sources
+################################################################################
+LIBPYTORCH_VERSION=1.4.0
+LIBPYTORCH_URL=https://github.com/pytorch/pytorch/archive/v1.4.0.tar.gz
+LIBPYTORCH_PATCHDIR=$(LIBPYTORCH_BASE)/patches
+$(eval $(call fetch,libpytorch,$(LIBPYTORCH_URL)))
+$(eval $(call 
patch,libpytorch,$(LIBPYTORCH_PATCHDIR),pytorch-$(LIBPYTORCH_VERSION)))
+
+################################################################################
+# Helpers
+# 
################################################################################
+LIBPYTORCH_SUBDIR=pytorch-$(LIBPYTORCH_VERSION)
+LIBPYTORCH_SRC=$(LIBPYTORCH_ORIGIN)/$(LIBPYTORCH_SUBDIR)
+
+################################################################################
+# Library includes
+################################################################################
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/modules
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten/src
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten/src/TH
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten
+CINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/include/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/deps/clog/include/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/tools
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/aten/src/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_BASE)/include
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_BASE)/include/aten/src
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/caffe2/aten/src/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/lib/libshm/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/csrc/api/include/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/lib/
+CINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/third_party/miniz-2.0.8/
+
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/modules
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten/src
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten/src/TH
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/aten
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/include/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/deps/clog/include/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/tools
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/aten/src/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/caffe2/aten/src/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_BASE)/include
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_BASE)/include/aten/src
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/build/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/lib/libshm/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/csrc/api/include/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += -I$(LIBPYTORCH_SRC)/torch/lib/
+CXXINCLUDES-$(CONFIG_LIBPYTORCH) += 
-I$(LIBPYTORCH_SRC)/third_party/miniz-2.0.8/
+
+################################################################################
+# Global flags
+################################################################################
+# Suppress some warnings to make the build process look neater
+LIBPYTORCH_SUPPRESS_FLAGS += -Wno-unused-parameter -Wno-unused-variable 
-Wno-nonnull           \
+-Wno-unused-but-set-variable -Wno-unused-label -Wno-char-subscripts            
                \
+-Wno-unused-function -Wno-missing-field-initializers -Wno-uninitialized        
                        \
+-Wno-array-bounds -Wno-maybe-uninitialized -Wno-unused-value -Wno-attributes   
                \
+-Wno-unused-macros -Wno-parentheses -Wno-unknown-pragmas 
-Wno-deprecated-declarations          \
+-Wno-missing-braces -Wno-endif-labels -Wno-unused-but-set-variable             
                \
+-Wno-type-limits -Wno-sign-compare -fpermissive
+
+LIBPYTORCH_CFLAGS-y    +=  $(LIBPYTORCH_SUPPRESS_FLAGS) -D CAFFE2_DISABLE_NUMA 
-D CAFFE2_USE_EIGEN_FOR_BLAS -D C10_BUILD_MAIN_LIB 
-DC10_USING_CUSTOM_GENERATED_MACROS -DAT_PARALLEL_NATIVE  -DHAVE_MMAP 
-DC10_DISABLE_NUMA -DCAFFE2_BUILD_MAIN_LIB 
-DCAFFE2_API="__attribute__((__visibility__(\"default\")))" 
-DC10_API="__attribute__((__visibility__(\"default\")))" -DONNX_NAMESPACE=onnx 
-DCAFFE2_DISABLE_SIGNAL_HANDLERS -DCPU_CAPABILITY=DEFAULT
+
+LIBPYTORCH_CXXFLAGS-y  += $(LIBPYTORCH_SUPPRESS_FLAGS) -D CAFFE2_DISABLE_NUMA 
-D CAFFE2_USE_EIGEN_FOR_BLAS -D C10_BUILD_MAIN_LIB 
-DC10_USING_CUSTOM_GENERATED_MACROS -DAT_PARALLEL_NATIVE  -DHAVE_MMAP 
-DC10_DISABLE_NUMA -DCAFFE2_BUILD_MAIN_LIB 
-DCAFFE2_API="__attribute__((__visibility__(\"default\")))" 
-DC10_API="__attribute__((__visibility__(\"default\")))" -DONNX_NAMESPACE=onnx 
-DCAFFE2_DISABLE_SIGNAL_HANDLERS -DCPU_CAPABILITY=DEFAULT
+
+# TODO: for better performance
+# USE_STATIC_DISPATCH
+# HAVE_AVX_CPU_DEFINITION
+
+################################################################################
+# Library sources
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_BASE)/glue.c
+
+################################################################################
+# modules/observers
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/observers/net_observer_reporter_print.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/observers/observer_config.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/observers/perf_observer.cc
+
+################################################################################
+# modules/rocksdb
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/rocksdb/rocksdb.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/module_test/module_test_dynamic.cc
+
+################################################################################
+# modules/detectron
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/detectron/roi_pool_f_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/detectron/sample_as_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/spatial_narrow_as_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/detectron/upsample_nearest_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/softmax_focal_loss_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/detectron/smooth_l1_loss_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/select_smooth_l1_loss_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/modules/detectron/ps_roi_pool_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/sigmoid_focal_loss_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/sigmoid_cross_entropy_loss_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/modules/detectron/group_spatial_softmax_op.cc
+
+################################################################################
+# caffe2/queue
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/queue/rebatching_queue_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/queue/blobs_queue.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/queue/blobs_queue_db.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/queue/queue_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/queue/rebatching_queue.cc
+
+################################################################################
+# caffe2/quantization/server
+################################################################################
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fully_connected_dnnlowp_acc16_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fully_connected_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/p99.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/dnnlowp_partition.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/dnnlowp.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fbgemm_pack_matrix_cache.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/sigmoid.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/activation_distribution_observer.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_sum_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/quantize_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_mul_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/channel_shuffle_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/lstm_unit_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fully_connected_fake_lowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/p99_example.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/utility_dnnlowp_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/concat_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/spatial_batch_norm_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/group_norm_dnnlowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/pool_dnnlowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/transpose.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/kl_minimization.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/dequantize_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/tanh.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/l2_minimization_example.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/norm_minimization_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/conv_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/spatial_batch_norm_dnnlowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/caffe2_dnnlowp_utils.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/conv_dnnlowp_acc16_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/spatial_batch_norm_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/group_norm_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fc_fake_lowp_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/conv_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/pybind.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/pool_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/relu_dnnlowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/kl_minimization_example.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/quantization/server/tanh_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_linear_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/batch_matmul_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_sum_dnnlowp_op_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fully_connected_fake_lowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/sigmoid_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/l2_minimization_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/l1_minimization_example.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/batch_permutation_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/l2_minimization_approx_example.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_add_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/tanh_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_sum_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/relu_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/resize_nearest_dnnlowp_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/fbgemm_pack_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/requantization_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/dynamic_histogram_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/dynamic_histogram.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/elementwise_sum_benchmark.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/sigmoid_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/norm_minimization.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/quantization/server/resize_nearest_3d_dnnlowp_op.cc
+
+################################################################################
+# caffe2/operators
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/find_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/spatial_batch_norm_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/unique_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/given_tensor_byte_string_to_uint8_fill_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/half_float_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lengths_pad_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/summarize_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/utility_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_matmul_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/ceil_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/flatten_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/acos_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/rsqrt_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/integral_image_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_div_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/boolean_mask_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/relu_n_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/softmax_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/perplexity_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/gelu_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/locally_connected_op_util.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/softplus_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/space_batch_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/normalize_l1_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/reciprocal_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/remove_data_blocks_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/index_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/copy_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/floor_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/gather_fused_8bit_rowwise_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/feed_blob_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/fc_inference.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/length_split_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/jsd_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/reduce_front_back_max_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sparse_normalize_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/segment_reduction_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/fused_rowwise_8bit_conversion_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_bucketize_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/stats_put_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/ctc_beam_search_decoder_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/find_duplicate_elements_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/tan_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/roi_align_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sin_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/instance_norm_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/workspace_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/exp_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sqrt_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/expand_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conv_transpose_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/roi_align_rotated_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/do_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pow_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/reshape_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_sub_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/free_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_logical_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/loss_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/ngram_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/expand_squeeze_dims_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/sparse_to_dense_mask_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cosh_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/roi_align_rotated_gradient_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_div_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/bbox_transform_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/upsample_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/tanh_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/shape_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/im2col_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/multi_class_accuracy_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/lengths_reducer_fused_8bit_rowwise_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/scale_blobs_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sqr_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/variable_length_sequence_padding.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/text_file_reader_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cast_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/cosine_embedding_criterion_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/dropout_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/minmax_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/reverse_packed_segs_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/accuracy_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/one_hot_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/sparse_dropout_with_replacement_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/negative_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/square_root_divide_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/local_response_normalization_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/ensure_cpu_output_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/roi_pool_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_ops_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/bisect_percentile_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/hard_sigmoid_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/thresholded_relu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cbrt_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/conv_transpose_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/quant_decode_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/rowmul_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/erf_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conditional_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sparse_to_dense_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_sum_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lstm_unit_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/alias_with_name.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/onnx_while_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/atomic_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/load_save_op_util.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/partition_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/merge_id_lists_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/arg_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/fused_rowwise_random_quantization_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/reduction_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/reservoir_sampling.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/bucketize_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/top_k.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/order_switch_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/replace_nan_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/stylizer_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/stop_gradient.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/tensor_protos_db_input.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cross_entropy_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/norm_planar_yuv_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pool_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/selu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/transpose_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/rank_loss_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/spatial_batch_norm_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/boolean_unmask_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/generate_proposals_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/negate_gradient_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/lengths_reducer_rowwise_8bit_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/affine_channel_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/reciprocal_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conv_op_shared.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_ops_schema.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_sub_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/leaky_relu_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_linear_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/atan_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/feature_maps_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/filler_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/sparse_lengths_sum_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/flatten_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/averaged_loss_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/batch_matmul_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/enforce_finite_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/relu_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/batch_gather_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/stop_gradient_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/sigmoid_cross_entropy_with_logits_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/fc_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/mul_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/concat_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/cast_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/expand_dims_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/sigmoid_cpu.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/experimental/c10/cpu/add_cpu.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/mod_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/deform_conv_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/inference_lstm_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/enforce_finite_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_moments_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/h_softmax_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_mul_gradient_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/last_n_window_collector.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/sinusoid_position_encoding_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/numpy_tile_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/flexible_top_k.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/swish_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/distance_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/dense_vector_to_id_list_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/box_with_nms_limit_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/piecewise_linear_transform_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/text_file_reader.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/group_norm_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/ctc_greedy_decoder_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/relu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/instance_norm_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/conv_transpose_op_mobile.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lengths_top_k_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pack_rnn_sequence_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sigmoid_gradient_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/spatial_softmax_with_loss_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cos_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/resize_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lpnorm_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/reduce_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/fully_connected_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/layer_norm_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/data_couple.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/copy_rows_to_tensor_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/scale_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/softsign_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/clip_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lp_pool_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_gather_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/create_scope_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conv_op_eigen.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/stats_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/asin_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/tt_linear_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/ensure_clipped_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_add_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/collect_and_distribute_fpn_rpn_proposals_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/load_save_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/softmax_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/weighted_sample_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/given_tensor_fill_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_box_cox_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/locally_connected_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/channel_backprop_stats_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/log_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/zero_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/prepend_dim_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/byte_weight_dequant_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conv_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lengths_tile_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/percentile_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sequence_ops.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/elementwise_add_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/abs_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/margin_ranking_criterion_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/glu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/channel_stats_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/gather_ranges_to_dense_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/softmax_with_loss_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/reduce_front_back_mean_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/resize_3d_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/moments_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/slice_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/assert_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/dataset_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/lengths_reducer_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/conv_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/heatmap_max_keypoint_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pad_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/channel_shuffle_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/normalize_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/deform_conv_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/mean_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/prelu_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/rmac_regions_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cube_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/tanh_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/communicator_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/string_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/apmeter_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/gru_unit_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/concat_split_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pool_op_util.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/is_empty_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/cc_bmm_bg_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/crash_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sinh_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/logit_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/index_hash_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/tile_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/reduce_front_back_sum_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/batch_permutation_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/gather_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/if_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/stump_func_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/roi_align_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/key_split_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/while_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/listwise_l2r_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/map_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/elementwise_mul_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pool_gradient_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/minmax_gradient_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/sigmoid_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/weighted_multi_sampling_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/crf_viterbi_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/counter_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/pack_segments.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/accumulate_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/matmul_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/filler_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/rnn/recurrent_network_executor.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/rnn/recurrent_network_blob_fetcher_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/rnn/recurrent_network_op.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/batch_sparse_to_dense_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/signal_handler.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math/elementwise.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math/reduce.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math/utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math/broadcast.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math/transpose.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/smart_tensor_printer.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/murmur_hash3.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/bench_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/math_cpu.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/proto_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/string_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/cpuid.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/threadpool/ThreadPool.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/utils/threadpool/pthreadpool_impl.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/utils/threadpool/ThreadPoolMobile.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/threadpool/pthreadpool.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/proto_convert.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/utils/proto_wrap.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/observers/time_observer.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/observers/runcnt_observer.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/observers/profile_observer.cc
+
+################################################################################
+# caffe2/operators/quantized
+################################################################################
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_slice_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_flatten_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_add_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/init_qnnpack.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_resize_nearest_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_fc_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_concat_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_softmax_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_conv_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_roi_align_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_sigmoid_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_channel_shuffle_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_average_pool_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_given_tensor_fill_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_quantize_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_max_pool_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_roi_align_op_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_reshape_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_conv_transpose_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_leaky_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_conv_op_relu.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_transpose_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_dequantize_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/operators/quantized/int8_test.cc
+
+################################################################################
+# caffe2/operators/ideep
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/utility_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_add_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_relu_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_fully_connected_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_conv_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_given_tensor_fill_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_quantize_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_pool_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/quantization/int8_dequantize_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/conv_transpose_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/reshape_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/expand_squeeze_dims_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/shape_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/dropout_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/local_response_normalization_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/elementwise_sum_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/order_switch_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/pool_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/transpose_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/spatial_batch_norm_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/relu_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/adam_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/momentum_sgd_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/fully_connected_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/queue_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/conv_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/channel_shuffle_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/concat_split_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/operators/sigmoid_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/ideep/operators/operator_fallback_ideep.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/ideep/utils/ideep_register.cc
+
+################################################################################
+# caffe2/contrib
+################################################################################
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/pytorch/script_module_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/shm_mutex/shm_mutex.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/nnpack/nnpack_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/opencl/context.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/opencl/context_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/nccl/cuda_nccl_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/nccl/cuda_nccl_op_gpu.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/prof/prof_dag_stats_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/prof/cuda_profile_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/aten/aten_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/aten/aten_op_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/allgather_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/gloo/common_world_ops_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/store_handler.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/common.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/gloo/broadcast_ops_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/py_export.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/common_world_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/barrier_ops.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/context.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/allreduce_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/gloo/allreduce_ops_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/gloo/broadcast_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/gloo/reduce_scatter_ops.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/tensorrt/tensorrt_op_trt.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/tensorrt/trt_utils.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/contrib/tensorrt/tensorrt_tranformer.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/image/image_input_op_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/image/image_input_op.cc
+
+################################################################################
+# caffe2/predictor
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/predictor_utils.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/predictor.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/predictor/emulator/data_filler_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/emulator/benchmark.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/predictor/emulator/data_filler.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/transforms.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/ThreadLocalPtr.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/predictor_config.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/predictor/predictor_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/sparse_matrix_reshape_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/funhash_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/tt_pad_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/tt_contraction_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/fully_connected_op_sparse.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/sparse_funhash_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/fully_connected_op_prune.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/tt_contraction_op_gpu.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/fully_connected_op_decomposition.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/experiments/operators/fully_connected_op_decomposition_gpu.cc
+
+################################################################################
+# caffe2/opt
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/fusion.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/onnxifi_transformer.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/mobile_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/tvm_transformer.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/distributed_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/passes.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/converter_nomigraph_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/converter_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/concat_elim.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/fakefp16_transform.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/concat_elim_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/cc_amrc.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/pointwise_elim.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/converter.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/custom/glow_net_transform.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/dead_code_elim.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/backend_cutting_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/distributed.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/opt/nql/tests/GraphMatcherTest.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/nql/graphmatcher.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/backend_cutting.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/onnxifi_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/device.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/distributed_converter.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/bound_shape_inferencer.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/backend_transformer_base.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/annotations.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/shape_info.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/device_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/dead_code_elim_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/mobile.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/opt/bound_shape_inference_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/optimize_ideep.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/converter.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/opt/optimizer.cc
+
+################################################################################
+# caffe2/onnx
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/offline_tensor.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/torch_ops/defs.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/torch_ops/schema.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/device.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/onnx_exporter.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/ssa_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/onnxifi_graph_info.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/backend_rep.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/backend.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/onnxifi_init.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/onnx/helper.cc
+
+################################################################################
+# caffe2/mpi
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/mpi/mpi_gpu_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/mpi/mpi_common.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/mpi/mpi_ops_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/mpi/mpi_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/mpi/mpi_ops.cc
+
+################################################################################
+# caffe2/video
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/video/video_decoder.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/video/video_input_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/video/video_input_op_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/video/optical_flow.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/video/video_io.cc
+
+################################################################################
+# caffe2/sgd
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/ftrl_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/yellowfin_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/wngrad_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/iter_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/adagrad_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/clip_tensor_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/learning_rate_adaption_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/adadelta_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/lars_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/rmsprop_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/adam_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/momentum_sgd_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/gftrl_op.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/sgd/learning_rate_op.cc
+
+
+################################################################################
+# caffe2/serialize
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/serialize/inline_container.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/serialize/file_adapter.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/serialize/istream_adapter.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/serialize/read_adapter_interface.cc|caffe2_serialize
+
+################################################################################
+# caffe2/core
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_parallel.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/int8_serialization.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/blob_serialization.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_simple.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/memonger.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/tensor.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_task.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/transform.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_task_graph.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_dag_utils.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_simple_refcount.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/operator_schema.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/module.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/init.cc|caffe2
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_tracing.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/common.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/workspace.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/types.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/allocator.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/prof_dag_counters.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/init_intrinsics_check.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/operator.cc|caffe2_core
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_base.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/event.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/graph.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/qtensor_serialization.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/context.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/tensor_int8.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/db.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_scheduling.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/net_async_task_future.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/numa.cc|caffe2
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/export_c10_op_to_caffe2.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/context_base.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/blob_stats.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/init_denormals.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/stats.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/qtensor.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/plan_executor.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/core/nomnigraph/Representations/NeuralNet.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/core/init_omp.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_int8.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_dlpack.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_hip.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/mpi_python.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_nomni.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_ideep.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/python/pybind_state_registry.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/lmdb.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/create_db_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/leveldb.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/create_db_op_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/zmqdb.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/protodb.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/db/db_test.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/redis_store_handler.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/file_store_handler_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/redis_store_handler_op_gpu.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/redis_store_handler_op.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/distributed/store_handler.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/file_store_handler.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/distributed/py_export.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/distributed/file_store_handler_op_gpu.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/distributed/store_ops.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/transforms/single_op_transform.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/transforms/common_subexpression_elimination.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/transforms/pattern_net_transform.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/transforms/conv_to_nnpack_transform.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/fused_8bit_rowwise_embedding_lookup_idx.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/adagrad_avx.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup_idx_avx2.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/typed_axpy_avx2.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup_fused_8bit_rowwise_avx2.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/common_avx512.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/fused_8bit_rowwise_embedding_lookup.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup_idx.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/math_cpu_base.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/common_avx2.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/common_avx.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup_avx2.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/adagrad.cc|adagrad
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/perfkernels/embedding_lookup_fused_8bit_rowwise_idx_avx2.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/math_cpu_avx2.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/typed_axpy_avx.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/perfkernels/typed_axpy.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/share/contrib/nnpack/nnpack_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/share/contrib/nnpack/conv_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/share/contrib/zstd/quant_decomp_zstd_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/share/contrib/depthwise/depthwise3x3_conv_op.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/caffe2/share/contrib/depthwise/depthwise3x3_conv_op_test.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/test/caffe2_gtest_main.cc
+
+################################################################################
+# aten/src/ATen
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/TensorNames.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/mkldnn/Runtime.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/Utils.cpp|aten
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/ParallelNative.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/build/aten/src/ATen/core/OpsAlreadyMovedToC10.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/build/aten/src/ATen/LegacyTHFunctionsCPU.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/aten/src/ATen/TypeDefault.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/Context.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/aten/src/ATen/CPUType.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/aten/src/ATen/QuantizedCPUType.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/aten/src/ATen/SparseCPUType.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/MemoryOverlap.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/ExpandUtils.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/ParallelNativeTBB.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/quantized/QTensorImpl.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/quantized/Quantizer.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/DLConvertor.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/ThreadLocalDebugInfo.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/Version.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/stub/CombinedStub.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/TensorUtils.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/SparseTensorImpl.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/NamedTensorUtils.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/ParallelThreadPoolNative.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/CPUGenerator.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/ParallelCommon.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/DynamicLibrary.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/TensorGeometry.cpp
+
+################################################################################
+# aten/src/Aten/core
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/dispatch/Dispatcher.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/dispatch/OperatorEntry.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/VariableHooksInterface.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/LegacyDeviceTypeInit.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/grad_mode.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/interned_strings.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/ATenGeneral.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/blob.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/register_symbols.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/op_registration/op_registration.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/op_registration/infer_schema.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/DeprecatedTypePropertiesRegistry.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/Generator.cpp|aten_core
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/Formatting.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/DeprecatedTypeProperties.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/type.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/ivalue.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/Dimname.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/NamedTensor.cpp|core
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/core/LegacyTypeDispatch.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/Range.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/core/Tensor.cpp
+
+################################################################################
+# aten/src/Aten/native/quantizied
+################################################################################
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/leaky-relu.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/average-pooling.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/init.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8dwconv/up8x9-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8dwconv/mp8x25-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8rmax/sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/2x4c8-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/channel-shuffle.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sdwconv/up4x9-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/4x4c2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8conv/4x4c2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/up8xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/up8x7-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/mp8x7p7q-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/indirection.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/convolution.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x4-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x3-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/fully-connected.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8lut/scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/clamp.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/q31-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/q31-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/fp32-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/q31-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/fp32-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/fp32-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/q31-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/gemmlowp-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/gemmlowp-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/gemmlowp-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/gemmlowp-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/operator-delete.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/global-average-pooling.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8lut32norm/scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8maxpool/sub16-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8maxpool/16x9p8q-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sconv/6x8-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/add.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/max-pooling.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sigmoid.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8clamp/sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sgemm/6x8-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/operator-run.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/softargmax.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8vadd/sse2.c|q8vadd
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/deconvolution.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/up8x9-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/up8xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/mp8x9p8q-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/fc-run.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/fc-prepack.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/conv-run.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/conv-prepack.cc
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/deps/clog/src/clog.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8dwconv/up8x9-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8dwconv/mp8x25-sse2.c
+#
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8rmax/sse2.c|u8rmax
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/2x4c8-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/4x4c2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8conv/4x4c2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/up8xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/up8x7-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/mp8x7p7q-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/dummy.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x2-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x4-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x3-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8lut/scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/q31-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/q31-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/fp32-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/q31-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/fp32-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/fp32-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/q31-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/gemmlowp-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/gemmlowp-sse4.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/gemmlowp-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-ssse3.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/gemmlowp-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8lut32norm/scalar.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8maxpool/sub16-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8maxpool/16x9p8q-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8clamp/sse2.c|u8clamp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/sgemm/6x8-psimd.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8vadd/sse2.c|q8vadd
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/up8x9-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/up8xm-sse2.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/mp8x9p8q-sse2.c
+
+# ARM
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8dwconv/up8x9-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8dwconv/mp8x25-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8rmax/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/4x-sumrows-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/8x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/4x8c2-xzp-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/4x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gemm/6x4-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8conv/8x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8conv/4x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/mp8x7p7q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/up8xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8gavgpool/up8x7-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x4-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x3-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/x8zip/x2-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/hgemm/8x8-neonfp16arith.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8maxpool/sub16-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8maxpool/16x9p8q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/u8clamp/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sgemm/6x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/sgemm/5x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8vadd/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/mp8x9p8q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/precise-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/gemmlowp-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/q31-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/requantization/fp32-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8dwconv/up8x9-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8dwconv/mp8x25-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/mp8x7p7q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/up8xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gavgpool/up8x7-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/6x4-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8conv/8x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8conv/4x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/8x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/4x8c2-xzp-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/4x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8rmax/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8gemm/4x-sumrows-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8vadd/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/mp8x9p8q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/up8x9-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/q8avgpool/up8xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/precise-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/gemmlowp-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/up8x9-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/src/q8avgpool/up8xm-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/sgemm/5x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8clamp/neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/sgemm/6x8-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/fp32-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8maxpool/sub16-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/u8maxpool/16x9p8q-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/requantization/q31-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x2-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x3-neon.c
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qnnpack/wrappers/x8zip/x4-neon.c
+
+################################################################################
+# aten/src/ATen/mkldnn
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/TensorShape.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/IDeepRegistration.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/UnaryOps.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/MKLDNNCommon.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Utils.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Relu.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/MkldnnTensorMath.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Linear.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/MKLDNNConversions.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Normalization.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/BinaryOps.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/TensorFactories.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Pooling.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/Conv.cpp|mkldnn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkldnn/SoftMax.cpp|mkldnn
+
+################################################################################
+# aten/src/ATen/native
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorShape.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Im2Col.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Indexing.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/UnaryOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/PointwiseOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/layer_norm.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/WeightNorm.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkl/LinearAlgebra.cpp|mkl
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/mkl/SpectralOps.cpp|mkl
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/NaiveDilatedConvolution.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/PixelShuffle.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ConvolutionMM3d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Fill.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorTransformations.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Embedding.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Sorting.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Integration.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/RNN.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/SummaryOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/NNPACK.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Lerp.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/BatchLinearAlgebra.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Cross.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleLinear1d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Scalar.cpp|aten
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Unique.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Repeat.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Itertools.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/DilatedMaxPool3d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/LinearAlgebra.cpp|native
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/LossCTC.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Linear.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ReduceOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/LossNLL.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Unfold2d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleNearest1d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/RangeFactories.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/VariableMethodStubs.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Col2Im.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Resize.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Distributions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/LossNLL2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ConvolutionMM2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ConstantPadNd.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Distance.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/sparse/SparseTensor.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/sparse/SparseTensorMath.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/DispatchStub.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/AffineGridGenerator.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/AdaptiveMaxPooling3d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorIterator.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/miopen/RNN_miopen.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/miopen/Conv_miopen.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/miopen/BatchNorm_miopen.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ReflectionPad.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Copy.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Normalization.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleBilinear2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Dropout.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/DilatedMaxPool2d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorConversions.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/NaiveConvolutionTranspose3d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/LegacyDefinitions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/BinaryOps.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleNearest3d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Loss.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorFactories.cpp|native
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorProperties.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/AdaptiveAveragePooling.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/LegacyBridge.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorCompare.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/EmbeddingBag.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Pooling.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleNearest2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/MaxUnpooling.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Onehot.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/AveragePool3d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/AdaptiveMaxPooling2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Convolution.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/TypeProperties.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleBicubic2d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/NamedTensor.cpp|native
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/ReplicationPadding.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Pow.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/AdaptiveAveragePooling3d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Unfold3d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/UpSampleTrilinear3d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/FractionalMaxPool2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/SobolEngineOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/ConvolutionTBC.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/NaiveConvolutionTranspose2d.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/LossMultiLabelMargin.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Memory.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/LossMultiMargin.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/LegacyNNDefinitions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/AveragePool2d.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/GridSampler.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/SpectralOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/Activation.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/TriangularOps.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/SoftMax.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/PackedSequence.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/QuantizedLinear.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/TensorIteratorReduce.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/FractionalMaxPool3d.cpp
+
+################################################################################
+# aten/src/ATen/native/cpu
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/DistanceOpsKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/SortingKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/MultinomialKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/FillKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/PowKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/DepthwiseConvKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/IndexKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/TensorCompareKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/PointwiseOpsKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/ReduceOpsKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/CopyKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/layer_norm_kernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/SoftMaxKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/Unfold2d.cpp|native_cpu
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/GridSamplerKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/CrossKernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/LerpKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/BinaryOpsKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/UnaryOpsKernel.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/cpu/Activation.cpp|native_cpu
+
+
+################################################################################
+# aten/src/ATen/native/quantized
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/QTensor.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/Copy.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/TensorFactories.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/TensorCompare.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/init_qnnpack.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/q_avgpool.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qreduction.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qconv.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qlinear.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/fbgemm_utils.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/fake_quantize_per_tensor_affine.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qupsample_bilinear2d.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qlinear_dynamic.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/fake_quantize_core.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qconv_unpack.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qconv_prepack.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/fake_quantize_per_channel_affine.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qlinear_prepack.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qmul.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qsort.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/tensor_operators.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qadd.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qupsample_nearest2d.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qrelu.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qlinear_unpack.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qconcat.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/qpool.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/q_adaavgpool.cpp|quantized
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/native/quantized/cpu/kernels/QuantizedOpKernels.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/cpu/FlushDenormal.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/detail/CUDAHooksInterface.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/ATen/detail/HIPHooksInterface.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/ATen/detail/CPUGuardImpl.cpp
+
+################################################################################
+# aten/src/THNN
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THNN/init.cpp|thnn
+
+################################################################################
+# aten/src/THC
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCStorageCopy.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCStorage.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/generic/THCStorageCopy.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/generic/THCStorage.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/generic/THCTensor.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCTensor.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/aten/src/THC/THCCachingHostAllocator.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCGeneral.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCStream.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/THC/THCAllocator.cpp
+
+################################################################################
+# aten/src/TH
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/vector/NEON.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/vector/AVX2.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/vector/VSX.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/vector/AVX.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorMoreMath.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THDiskFile.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THSize.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorFill.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THLapack.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THStorageFunctions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THGeneral.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorMath.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THMemoryFile.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensor.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorEvenMoreMath.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THVector.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorRandom.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorConv.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THBlas.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THLogAdd.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THAllocator.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THFile.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/aten/src/TH/THTensorLapack.cpp
+
+################################################################################
+# torch/csrc
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/dl.c
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/MemoryFormat.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/DataLoader.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/DynamicTypes.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Dtype.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/tensor/python_tensor.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Exceptions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/TypeInfo.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/onnx/init.cpp|csrc_onnx
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Device.cpp|csrc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Size.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/PtrWrapper.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Generator.cpp|torch_csrc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils.cpp|csrc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/serialization.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Module.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Storage.cpp|csrc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/QScheme.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/multiprocessing/init.cpp|csrc_multiprocessing
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/stub.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/python_dimname.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/Layout.cpp
+
+################################################################################
+# csrc/utils
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/object_ptr.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_layouts.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/byte_order.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/python_arg_parser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tuple_parser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_flatten.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/init.cpp|csrc_utils
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_numpy.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_new.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/invalid_arguments.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_dtypes.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_qschemes.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_types.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/structseq.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/variadic.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_memoryformats.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/utils/throughput_benchmark.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/cuda_lazy_init.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_list.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/utils/tensor_apply.cpp
+
+################################################################################
+# csrc/api
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/jit.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/cuda.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/enum.cpp
+
+################################################################################
+# csrc/data
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/data/datasets/mnist.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/data/samplers/distributed.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/data/samplers/random.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/data/samplers/sequential.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/data/samplers/stream.cpp
+
+################################################################################
+# csrc/nn
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/init.cpp|scrc_api
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/dropout.cpp|nn_modules
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/linear.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/upsampling.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/fold.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/normalization.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/padding.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/loss.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/activation.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/embedding.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/container/functional.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/container/named_any.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/conv.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/distance.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/batchnorm.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/pixelshuffle.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/instancenorm.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/pooling.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/_functions.cpp|nn
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/modules/rnn.cpp|nn
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/module.cpp|nn
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/dropout.cpp|nn_options
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/linear.cpp|nn_options
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/normalization.cpp|nn_options
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/vision.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/padding.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/activation.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/embedding.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/conv.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/batchnorm.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/instancenorm.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/pooling.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/nn/options/rnn.cpp|options
+
+################################################################################
+# csrc/serialize
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/serialize/input-archive.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/serialize/output-archive.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/serialize.cpp|api_src
+
+################################################################################
+# csrc/python
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/python/init.cpp|python
+
+################################################################################
+# csrc/optim
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/sgd.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/lbfgs.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/rmsprop.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/adam.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/adagrad.cpp|optim
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/serialize.cpp|api_optim
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/api/src/optim/optimizer.cpp
+
+################################################################################
+# csrc/distributed
+################################################################################
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/request_callback_impl.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/rref_proto.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/process_group_agent.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/rpc_agent.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/python_call.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/request_callback.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/script_resp.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/init.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/rref_context.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/rref.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/python_functions.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/script_call.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/script_remote_call.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/python_rpc_handler.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/utils.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/python_resp.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/types.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/message.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/future_message.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/py_rref.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/rpc/python_remote_call.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/context/context.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/context/container.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/init.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/engine/dist_engine.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/functions/sendrpc_backward.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/functions/recvrpc_backward.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/utils.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/propagate_gradients_resp.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/propagate_gradients_req.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/cleanup_autograd_context_resp.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/autograd_metadata.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/rpc_with_autograd.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/distributed/autograd/rpc_messages/cleanup_autograd_context_req.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/c10d/reducer.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/c10d/init.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/c10d/ddp.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/distributed/c10d/comm.cpp
+
+################################################################################
+# torch/csrc/jit
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/profiling_record.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/source_range.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/graph_executor.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/import_legacy.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/operator.cpp|jit
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/python_ir.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/ir.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/attributes.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/constants.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/profiling_graph_executor_impl.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/register_c10_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/scope.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/vararg_functions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/function.cpp|csrc_jit
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/export_module.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/register_prim_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/init.cpp|jit
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/symbolic_script.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/import.cpp|jit
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/testing/file_check.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/instruction.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/python_arg_flatten.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/unpickler.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/pickler.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/source_range_serialization.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/netdef_converter.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/print_handler.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/pass_manager.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/import_export_helpers.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/hooks_for_testing.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/pickle.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/jit_log.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/register_string_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/argument_spec.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/irparser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/register_special_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/subgraph_matcher.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/export.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/node_hashing.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/interpreter.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/operator_options.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/autodiff.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/python_tracer.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/import_source.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/python_interpreter.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/update_graph_executor_opt.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/tracer.cpp
+
+################################################################################
+# csrc/jit/fuser
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/executor.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/cuda/fused_kernel.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/codegen.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/kernel_cache.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/interface.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/fallback.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/compiler.cpp|jit_fuser
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/fuser/cpu/fused_kernel.cpp
+
+################################################################################
+# torch/csrc/passes
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/inplace_check.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/dead_code_elimination.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/loop_unrolling.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/lower_tuples.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/remove_expands.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/alias_analysis.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/canonicalize.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/remove_inplace_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/utils/memory_dag.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/utils/subgraph_utils.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/utils/check_alias_annotation.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/constant_propagation.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/canonicalize_ops.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/create_autodiff_subgraphs.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/constant_pooling.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/specialize_autogradzero.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/peephole.cpp|jit
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/insert_guards.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/shape_analysis.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/inline_fork_wait.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/subgraph_rewrite.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/clear_undefinedness.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/inline_forked_closures.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/lower_grad_of.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/python_print.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/helper.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/unpack_quantized_weights.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/peephole.cpp|onnx
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/scalar_type_analysis.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/cast_all_constant_to_floating.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/constant_fold.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/prepare_division_for_onnx.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/onnx/fixup_onnx_loop.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/bailout_graph.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/quantization.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/liveness.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/batch_mm.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/decompose_ops.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/inliner.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/requires_grad_analysis.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/lower_graph.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/graph_fuser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/lift_closures.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/guard_elimination.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/inline_autodiff_subgraphs.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/erase_number_types.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/passes/fuse_linear.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/common_subexpression_elimination.cpp|jit_passes
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/passes/fixup_trace_scope_blocks.cpp
+
+################################################################################
+# csrc/script
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/strtod.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/function_schema_parser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/convert_to_ssa.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/error_report.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/module_save.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/schema_matching.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/logging.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/init.cpp|jit_scripts
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/concrete_module_type.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/lexer.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/schema_type_parser.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/sugared_value.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/class_type.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/module.cpp|jit_script
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/python_sugared_value.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/canonicalize_modified_loop.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/python_tree_views.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/inline_loop_condition.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/parser.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/exit_transforms.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/compiler.cpp|jit_script
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/jit_exception.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/script_type_parser.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/script/builtin_functions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/object.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/script/edit_distance.cpp
+
+################################################################################
+# csrc/jit/mobile
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/mobile/function.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/mobile/import.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/mobile/module.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/jit/mobile/interpreter.cpp
+#LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/jit/mobile/register_mobile_ops.cpp
+
+################################################################################
+# csrc/autograd
+################################################################################
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/python_legacy_variable.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/python_variable.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/python_engine.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/python_cpp_function.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/engine.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/function.cpp|csrc_autograd
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/profiler_cuda.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/init.cpp|autograd
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/anomaly_mode.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/input_buffer.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/record_function.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/autograd.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/VariableTypeManual.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/profiler.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/variable.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/cpp_hook.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/saved_variable.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/python_function.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/python_hook.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/python_variable_indexing.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/record_function_ops.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/python_anomaly_mode.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/custom_function.cpp
+
+################################################################################
+# csrc/autograd/functions
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/function_hook.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/tensor.cpp|atuograd_functions
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/init.cpp|autograd_functions
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/accumulate_grad.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/utils.cpp|auograd_functions
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/basic_ops.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/csrc/autograd/functions/comm.cpp
+
+################################################################################
+# csrc/lib/libshm
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/libshm/core.cpp|libshm
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/libshm/manager.cpp
+
+################################################################################
+# c10d
+################################################################################
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/Utils.cpp|c10d
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/ProcessGroupNCCL.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/ProcessGroup.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/HashStore.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/example/allreduce.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/ProcessGroupGloo.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/Store.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/TCPStore.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/ProcessGroupMPI.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/PrefixStore.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/FileStore.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/torch/lib/c10d/NCCLUtils.cpp
+
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/warpctc/ctc_op_gpu.cpp
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/caffe2/contrib/warpctc/ctc_op.cpp
+
+################################################################################
+# c10/util
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/numa.cpp|c10
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/UniqueVoidPtr.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Logging.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/TypeTraits.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/StringUtil.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Backtrace.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/flags_use_gflags.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Half.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Exception.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/flags_use_no_gflags.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/TypeList.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/thread_name.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Type.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/LeftRight.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Metaprogramming.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/typeid.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/C++17.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Array.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/intrusive_ptr.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/SmallVector.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/util/Optional.cpp
+
+################################################################################
+# c10/core
+################################################################################
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/Storage.cpp|c10
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/Allocator.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/Stream.cpp|c10
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/Scalar.cpp|c10
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/DefaultDtype.cpp
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/c10/core/impl/DeviceGuardImplInterface.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/impl/LocalTensorTypeSet.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/Device.cpp|c10
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/CopyBytes.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/TensorTypeId.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/DeviceType.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/UndefinedTensorImpl.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/thread_pool.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/TensorTypeSet.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/CPUAllocator.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/TensorImpl.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/TensorOptions.cpp
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/c10/core/StorageImpl.cpp
+
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/caffe2/proto/caffe2.pb.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/caffe2/proto/caffe2_legacy.pb.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/caffe2/proto/hsm.pb.cc
+LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/caffe2/proto/torch.pb.cc
+#LIBPYTORCH_SRCS-y += $(LIBPYTORCH_SRC)/build/caffe2/proto/metanet.pb.cc
+LIBPYTORCH_SRCS-y += 
$(LIBPYTORCH_SRC)/build/caffe2/proto/predictor_consts.pb.cc
+LIBPYTORCH_SRCS-y+= $(LIBPYTORCH_SRC)/build/caffe2/proto/prof_dag.pb.cc
+
+################################################################################
+# third_party/miniz
+################################################################################
+LIBPYTORCH_SRCS-y+= $(LIBPYTORCH_SRC)/third_party/miniz-2.0.8/miniz.c
+
+################################################################################
+# torch/csrc/autograd/generated
+################################################################################
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/Functions.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/VariableType_4.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/VariableType_0.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/VariableType_1.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/VariableType_2.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/VariableType_3.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/python_functions.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/python_nn_functions.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/python_torch_functions.cpp
+LIBPYTORCH_SRCS-y+= 
$(LIBPYTORCH_SRC)/torch/csrc/autograd/generated/python_variable_methods.cpp
+
+$(LIBPYTORCH_BUILD)/.prepared: $(LIBPYTORCH_BUILD)/.origin
+       cd $(LIBPYTORCH_SRC) && mkdir -p build/caffe2/proto && mkdir -p 
build/aten/src/ATen
+       cd $(LIBPYTORCH_SRC) && \
+               python3 aten/src/ATen/gen.py --source-path aten/src/ATen/ 
--install_dir build/aten/src/ATen/ aten/src/ATen/Declarations.cwrap 
aten/src/THNN/generic/THNN.h aten/src/THCUNN/generic/THCUNN.h 
aten/src/ATen/nn.yaml aten/src/ATen/native/native_functions.yaml
+       cd $(LIBPYTORCH_SRC) && \
+               cp aten/src/ATen/common_with_cwrap.py 
tools/shared/cwrap_common.py && \
+               cp torch/_utils_internal.py tools/shared && \
+               python3 tools/setup_helpers/generate_code.py  
--declarations-path build/aten/src/ATen/Declarations.yaml --nn-path aten/src/
+       cd $(LIBPYTORCH_SRC) && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/caffe2_legacy.proto && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/hsm.proto && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/torch.proto && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/metanet.proto && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/predictor_consts.proto && \
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/prof_dag.proto &&\
+               protoc -I. --cpp_out=dllexport_decl=CAFFE2_API:build/ 
caffe2/proto/caffe2.proto
+
+UK_PREPARE += $(LIBPYTORCH_BUILD)/.prepared
-- 
2.20.1






 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.