Welcome to mirror list, hosted at ThFree Co, Russian Federation.

nnx-1.0-1.rockspec - github.com/clementfarabet/lua---nnx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8489dbfefd32127d94282db4dfa5ebcd29f66ee3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149

package = "nnx"
version = "1.0-1"

source = {
   url = "nnx-1.0-1.tgz"
}

description = {
   summary = "An extension to Torch7's nn package.",
   detailed = [[
         This package provides extra trainable modules,
         which naturally extend the nn package. 
         Some of those might get marged into the original
         nn package, at some point. For this reason,
         all the modules from nnx are appended to nn.
   ]],
   homepage = "",
   license = "MIT/X11" -- or whatever you like
}

dependencies = {
   "lua >= 5.1",
   "torch",
   "sys",
   "xlua"
}

build = {
   type = "cmake",

   cmake = [[
         cmake_minimum_required(VERSION 2.8)

         set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})

         # infer path for Torch7
         string (REGEX REPLACE "(.*)lib/luarocks/rocks.*" "\\1" TORCH_PREFIX "${CMAKE_INSTALL_PREFIX}" )
         message (STATUS "Found Torch7, installed in: " ${TORCH_PREFIX})

         find_package (Torch REQUIRED)

         find_package (OpenMP REQUIRED)

         if (OPENMP_FOUND)
             message (STATUS "OpenMP Found with compiler flag : ${OpenMP_C_FLAGS}")
             set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
         endif (OPENMP_FOUND)

         set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)

	include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})

	 SET(WITH_CUDA OFF CACHE BOOL "Compile qlua and associated packages")

	IF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
          FIND_PACKAGE(CUDA 4.0)
	ENDIF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
	
        IF (CUDA_FOUND)
          	   # bug on Apple
	   IF(APPLE)
	     LINK_DIRECTORIES("/usr/local/cuda/lib/")
	   ENDIF(APPLE)

 	   find_library (TORCH_THC THC ${TORCH_BIN_DIR}/../lib NO_DEFAULT_PATH)

           set (TORCH_LIBRARIES  ${TORCH_TH} ${TORCH_THC} ${TORCH_luaT} ${TORCH_lua})
           set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_CUDA")

           cuda_add_library (lbfgs SHARED lbfgs.c)
           target_link_libraries (lbfgs ${TORCH_LIBRARIES})
           CUDA_ADD_CUBLAS_TO_TARGET(lbfgs)
           install_targets (/lib lbfgs)

	ELSE (CUDA_FOUND)

	    MESSAGE(STATUS "Disabling CUDA (CUDA 4.0 required, and not found)")
	    MESSAGE(STATUS "If CUDA 4.0 is installed, then specify CUDA_TOOLKIT_ROOT_DIR")

	    set (TORCH_LIBRARIES ${TORCH_TH} ${TORCH_luaT} ${TORCH_lua})

            add_library (lbfgs SHARED lbfgs.c)
            target_link_libraries (lbfgs ${TORCH_LIBRARIES})
            install_targets (/lib lbfgs)

	ENDIF (CUDA_FOUND)

         include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})
         add_library (nnx SHARED init.c)
         link_directories (${TORCH_LIBRARY_DIR})
         target_link_libraries (nnx ${TORCH_LIBRARIES})

         install_files(/lua/nnx init.lua)
         install_files(/lua/nnx Abs.lua)
         install_files(/lua/nnx ConfusionMatrix.lua)
         install_files(/lua/nnx DistNLLCriterion.lua)
         install_files(/lua/nnx Logger.lua)
         install_files(/lua/nnx Probe.lua)
         install_files(/lua/nnx HardShrink.lua)
         install_files(/lua/nnx Narrow.lua)
         install_files(/lua/nnx Type.lua)
         install_files(/lua/nnx Power.lua)
         install_files(/lua/nnx Square.lua)
         install_files(/lua/nnx Sqrt.lua)
         install_files(/lua/nnx Threshold.lua)
         install_files(/lua/nnx OmpModule.lua)
         install_files(/lua/nnx SpatialClassifier.lua)
         install_files(/lua/nnx SpatialMaxPooling.lua)
         install_files(/lua/nnx SpatialLinear.lua)
         install_files(/lua/nnx SpatialPadding.lua)
         install_files(/lua/nnx SpatialNormalization.lua)
         install_files(/lua/nnx SpatialUpSampling.lua)
         install_files(/lua/nnx SpatialReSampling.lua)
         install_files(/lua/nnx SpatialConvolutionSparse.lua)
         install_files(/lua/nnx SuperCriterion.lua)
         install_files(/lua/nnx SpatialCriterion.lua)
         install_files(/lua/nnx Trainer.lua)
         install_files(/lua/nnx OnlineTrainer.lua)
         install_files(/lua/nnx DataSet.lua)
         install_files(/lua/nnx DataList.lua)
         install_files(/lua/nnx DataSetLabelMe.lua)
         install_files(/lua/nnx CMulTable.lua)
         install_files(/lua/nnx CAddTable.lua)
         install_files(/lua/nnx CDivTable.lua)
         install_files(/lua/nnx CSubTable.lua)
         install_files(/lua/nnx Replicate.lua)
         install_files(/lua/nnx SpatialFovea.lua)
         install_files(/lua/nnx SpatialMSECriterion.lua)
         install_files(/lua/nnx SpatialClassNLLCriterion.lua)
         install_files(/lua/nnx SparseCriterion.lua)
         install_files(/lua/nnx SpatialSparseCriterion.lua)
         install_files(/lua/nnx SpatialGraph.lua)
         install_files(/lua/nnx SpatialColorTransform.lua)
         install_files(/lua/nnx SpatialRecursiveFovea.lua)
         install_files(/lua/nnx Optimization.lua)
         install_files(/lua/nnx LBFGSOptimization.lua)
         install_files(/lua/nnx SGDOptimization.lua)
         install_files(/lua/nnx GenSGDOptimization.lua)
         install_files(/lua/nnx BatchOptimization.lua)
         install_files(/lua/nnx BatchTrainer.lua)
         add_subdirectory (test)
         install_targets(/lib nnx)
   ]],

   variables = {
      CMAKE_INSTALL_PREFIX = "$(PREFIX)"
   }
}