forked from joshuef/peruse
-
Notifications
You must be signed in to change notification settings - Fork 0
/
webpack.config.renderer.dev.dll.js
66 lines (55 loc) · 1.71 KB
/
webpack.config.renderer.dev.dll.js
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
/**
* Builds the DLL for development electron renderer process
*/
import webpack from 'webpack';
import path from 'path';
import merge from 'webpack-merge';
import baseConfig from './webpack.config.base';
import { dependencies } from './package.json';
const dist = path.resolve( process.cwd(), 'dll' );
export default merge.smart( baseConfig, {
context : process.cwd(),
devtool : 'eval',
target : 'electron-renderer',
externals : ['fsevents', 'crypto-browserify'],
entry : {
vendor : [
'babel-polyfill',
...Object.keys( dependencies )
]
.filter( dependency => dependency !== 'font-awesome' ),
},
output : {
library : 'vendor',
path : dist,
filename : '[name].dll.js',
libraryTarget : 'var'
},
plugins : [
new webpack.DllPlugin( {
path : path.join( dist, '[name].json' ),
name : '[name]',
} ),
/**
* Create global constants which can be configured at compile time.
*
* Useful for allowing different behaviour between development builds and
* release builds
*
* NODE_ENV should be production so that modules do not perform certain
* development checks
*/
new webpack.DefinePlugin( {
'process.env.NODE_ENV' : JSON.stringify( process.env.NODE_ENV || 'development' )
} ),
new webpack.LoaderOptionsPlugin( {
debug : true,
options : {
context : path.resolve( process.cwd(), 'app' ),
output : {
path : path.resolve( process.cwd(), 'dll' ),
},
},
} )
],
} );