mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-14 20:48:00 +00:00
67 lines
1.9 KiB
JavaScript
67 lines
1.9 KiB
JavaScript
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
'use strict';
|
|
|
|
import webpack from 'webpack';
|
|
import {resolve} from 'node:path';
|
|
import {DEFAULT_ES_VERSION, addCopyrightBannerPlugin} from '../webpack.shared.mjs';
|
|
|
|
function buildConfig({
|
|
suffix = '.js', // '.js', '.min.js', ...
|
|
format = 'umd', // 'umd', 'commonjs'
|
|
target = 'web', // 'web', 'node'
|
|
esVersion = DEFAULT_ES_VERSION, // 'es5', 'es6', ...
|
|
mode = 'production', // 'development', 'production'
|
|
devtool = 'source-map' // 'inline-source-map', 'source-map'
|
|
}) {
|
|
// output file name
|
|
const filename = `ort-common${suffix}`;
|
|
|
|
// variable name of the exported object.
|
|
// - set to 'ort' when building 'umd' format.
|
|
// - set to undefined when building other formats (commonjs/module)
|
|
const exportName = format === 'umd' ? 'ort' : undefined;
|
|
|
|
return {
|
|
target: [target, esVersion],
|
|
entry: resolve('./lib/index.ts'),
|
|
output: {
|
|
path: resolve('./dist'),
|
|
filename,
|
|
library: {name: exportName, type: format},
|
|
},
|
|
resolve: {
|
|
extensions: ['.ts', '.js'],
|
|
extensionAlias: {'.js': ['.ts', '.js']},
|
|
},
|
|
plugins: [
|
|
new webpack.WatchIgnorePlugin({paths: [/\.js$/, /\.d\.ts$/]}),
|
|
addCopyrightBannerPlugin(mode, 'common', esVersion),
|
|
],
|
|
module: {
|
|
rules: [{
|
|
test: /\.ts$/,
|
|
use: [{
|
|
loader: 'ts-loader',
|
|
options: {compilerOptions: {target: esVersion}},
|
|
}]
|
|
}]
|
|
},
|
|
mode,
|
|
devtool,
|
|
};
|
|
}
|
|
|
|
export default (env, argv) => {
|
|
return [
|
|
buildConfig({suffix: '.es5.min.js', target: 'web', esVersion: 'es5'}),
|
|
buildConfig({suffix: '.min.js'}),
|
|
buildConfig({mode: 'development', devtool: 'inline-source-map'}),
|
|
buildConfig({
|
|
suffix: '.node.cjs',
|
|
target: 'node',
|
|
format: 'commonjs',
|
|
}),
|
|
];
|
|
};
|