908c9a715a
Add support for (un)installing commands
2018-06-27 03:32:26 +02:00
cb46d84fba
Add initial support for Java
...
This is currently limited to:
- one source file at a time (type=object)
- in-place compilation (no OBJDIR support)
- class files (as opposed to jars)
2018-06-18 23:36:31 -04:00
123d6709a7
Code cleanup
2018-06-18 23:32:07 -04:00
cba11c3d51
Add support for "cppflags" for C/C++ source files
2018-03-21 01:55:59 +01:00
d59dbdf1b4
Support "asflags" and "cppflags" for assembly sources
2018-03-20 03:00:06 +01:00
eedac9938f
Improve support for pre-processed assembly files
2018-03-19 18:13:08 +01:00
9664cf16b5
Code cleanup
2018-03-19 18:12:46 +01:00
51513a3b56
Pre-process assembly files only when relevant
...
This removes the use of CPPFLAGS otherwise.
2018-03-18 23:31:24 +01:00
8edc44150d
Add support for "cppflags" for C++ programs
2018-03-18 20:44:31 +01:00
525d4ea831
Introduce a new type for pre-processed assembly files
2018-03-18 20:36:50 +01:00
88ceb54518
Also provide a security warning for command targets
2018-03-09 03:00:30 +01:00
96614bd870
Add support for phony Makefile commands
...
This should arguably be the default for this type.
2018-03-09 02:16:53 +01:00
1592fc20ac
Do not remove objects for commands
2018-03-09 02:13:30 +01:00
ce6ab849ea
Introduce a new target type for simple commands
2018-03-09 02:03:13 +01:00
92652fb6e8
Be stricter when substituting libraries
...
This is being replaced by platform.sh.
2018-03-09 00:11:40 +01:00
f4617b7615
Do not output $(OBJDIR) when cleaning phony targets
2018-03-08 01:14:15 +01:00
279ca268f8
Add a configuration variable to disable targets by default
2018-02-19 00:16:59 +01:00
c3099549f8
Update the copyright notice
2018-02-19 00:10:25 +01:00
6716ef1bf8
Avoid a compilation warning
2018-02-19 00:09:56 +01:00
62b1883c22
Always build the whole project before installing
2017-12-28 01:37:32 +01:00
aaeccbeee4
Code cleanup
2017-11-18 05:00:37 +01:00
ce35c9c919
Move common code to a separate file
2017-11-18 04:23:19 +01:00
a162600940
Also obtain paths from configuration files
2017-11-18 04:08:18 +01:00
0ad67d1706
Code cleanup
2017-11-18 01:51:12 +01:00
3ce2dbb314
Code cleanup
2017-11-18 01:37:45 +01:00
baf80ca116
Add a helper to output extensions
...
This also adds a variable for the "tgz" extension. It defaults to
".tar.gz" or to ".tgz" on Windows.
2017-11-18 00:52:05 +01:00
5e782aa189
Let extensions be determined through configuration
2017-11-18 00:28:43 +01:00
36c1e62388
Improve error handling
2017-11-09 04:54:58 +01:00
666bcc29c0
Refactor looking up programs
...
This paves the way for configuration files.
2017-11-09 04:34:15 +01:00
8a14bdbdc7
Let the Configure instance be private (2/3)
2017-11-09 03:56:10 +01:00
65845e94d9
Let the Configure instance be private (1/3)
2017-11-09 03:51:30 +01:00
11980fa1b5
Code cleanup
2017-11-09 03:24:45 +01:00
a9d77a5ca6
Code cleanup
2017-11-09 03:05:41 +01:00
e9f5939e97
Code cleanup
2017-11-09 03:02:01 +01:00
2048ae8337
Code cleanup
2017-11-09 02:46:32 +01:00
a27a1640d4
Check for more errors
2017-11-09 02:27:42 +01:00
fc5ce3b511
Allow the verilog program to be specified
...
It should really work by default though.
2017-11-09 02:18:07 +01:00
66adfacfb9
Let the flags to ar(1) be overidden
2017-11-01 17:59:22 +01:00
cf3dfe9206
No longer hard-code permission checks
2017-10-15 18:51:22 +02:00
4f4432b038
Initial support for Verilog
...
This is still very hackish and limited unfortunately.
2017-04-30 02:53:05 +02:00
1767f4fc29
Add missing CXXFLAGSF
2017-04-30 00:51:06 +02:00
ca20d5fa11
Update the copyright notice
2017-04-30 00:50:09 +02:00
805a3a4dd0
Code cleanup (re-wrap)
2017-04-30 00:50:00 +02:00
1c3e7d8062
Truncate scripts at the first space to get the path
2016-09-15 03:02:21 +02:00
54aa67d2bd
Pave the way to keep track of directories created
2016-09-12 04:39:08 +02:00
ede0e5ce40
More consistent warning messages
2016-09-12 00:46:42 +02:00
10c3f377d2
Improve some error messages
2016-09-12 00:46:42 +02:00
8c7d171455
Add a test and warning for scripts to exist
2016-09-11 23:57:01 +02:00
f4992db978
Fix installing includes in sub-folders
2016-08-13 20:32:02 +02:00
99f2c823f1
Slightly simplify the "dist" rule
2016-07-26 14:30:35 +02:00
f13c206249
Update the copyright notice
2016-02-14 21:43:07 +01:00
57275fd77c
Clean objects in OBJDIR if set
2016-02-14 21:42:11 +01:00
8567ccc29a
Output more portable Makefiles
...
The extensions for executable files and shared objects can be
chosen without re-generating the Makefiles. There are still major
differences between MacOS X, Windows and UNIX platforms but these
changes reduce them a lot, especially when building binaries.
This should also help writing cross-platform "project.conf" files.
2015-09-09 12:38:37 -04:00
18b464992f
Always output EXEEXT and SOEXT
2015-09-09 12:02:39 -04:00
630e584e65
Also detect the extension for executables
2015-09-09 12:02:11 -04:00
6a8cc5a5a8
Also implement "asflags_force"
2015-08-29 17:05:59 +02:00
a740869dac
Add a helper for comma-separated variable expansion
2015-08-27 00:18:19 +02:00
b61c0fdb09
Always expand dependencies as expected
2015-08-27 00:06:31 +02:00
af737550f6
Comment out unused code
2015-08-27 00:05:57 +02:00
a25ace6344
Fix crash on Linux
2015-08-23 16:08:18 +02:00
55ebd56b08
Fix "make distcheck" with regard to OBJDIR
2015-05-25 18:37:34 +02:00
0bc141c002
Code cleanup
2015-05-25 18:24:37 +02:00
ffcfef3282
Avoid sub-shells where not necessary
...
This is for the "distcheck" target.
2015-05-25 18:05:49 +02:00
bbff942d35
Do not link to libraries before being built
2015-05-21 01:52:44 +02:00
08a54f65c4
Build libraries reliably with multiple jobs
2015-05-21 01:42:28 +02:00
969eef859c
Detect more errors
2015-05-21 01:22:23 +02:00
9397a25143
Code cleanup
2015-05-21 01:18:16 +02:00
f8740ea1ec
Avoid a crash on Linux systems
...
Use vsnprintf() (with n=0) instead of vsprintf() in dry-run mode.
2015-05-09 13:56:00 +02:00
10dd6865a1
Lift the safeguard against printing
2015-05-08 01:29:44 +02:00
1819d3ab5d
Use the new print helper
2015-05-08 01:28:55 +02:00
2d47888360
Remove unused variable
2015-05-08 00:54:51 +02:00
a2bc07cf7f
Introduce a helper for dry-run mode
2015-05-08 00:54:51 +02:00
fbf85f198d
Preliminary support for Objective-C{,++}
2015-05-07 23:38:11 +02:00
543a0e2d50
Assume Linux always has libintl
...
It should really detect GNU (glibc) and not base the test on the Linux
kernel alone though.
2015-04-02 19:38:43 +02:00
3c462bd392
Updated the copyright line
2015-02-06 01:38:37 +01:00
1df558bbac
Largely improved support for OBJDIR by placing objects in a mirrored hierarchy
2015-02-06 01:36:17 +01:00
17d5fb9d81
Reflected support for phony script targets when installing as well
2014-12-13 02:47:19 +01:00
5308765aa2
Added support for phony script targets
2014-12-13 02:40:32 +01:00
bb54a897b2
Code cleanup
2014-12-01 00:31:52 +01:00
6a625dc18e
Let invididual scripted targets have a separate prefix
2014-12-01 00:29:24 +01:00
fb3ed4e1b0
Added a helper to output target definitions
2014-11-16 14:56:57 +01:00
029a46b049
No longer require even "make dist" to write to the current directory
2014-11-16 14:45:05 +01:00
c2f10ca5a3
Create archives from "make dist" in OBJDIR
...
This still requires creating a symbolic link in the sources directory
though.
2014-11-15 14:49:20 +01:00
94d445eafd
Code cleanup
2014-11-12 02:01:15 +01:00
b7c76b3696
No longer output variables for static libraries when not supported
2014-11-12 01:47:00 +01:00
a415d0adf1
Isolated the generation of static libraries as a platform capability
2014-11-12 01:43:50 +01:00
7a95945a01
Pass the Windows library test
2014-11-12 01:34:35 +01:00
0a26b49220
Fixed target definitions for libraries with OBJDIR
2014-11-12 00:56:26 +01:00
f5ba74891b
Code cleanup
2014-11-12 00:43:57 +01:00
b603113261
Pass the Windows binary test
2014-11-12 00:42:19 +01:00
c87a3ffa84
Pass all the tests again
2014-11-11 21:12:28 +01:00
60f2216da2
Fixed "make uninstall" on MacOS X
2014-11-11 20:57:26 +01:00
e17b53c4e5
Fixed "make install" on MacOS X
2014-11-11 20:57:26 +01:00
61c0351965
Abstract a good part of the output in helpers
2014-11-11 20:56:40 +01:00
b0441df064
Implemented library versioning on MacOS X (needs more work)
2014-11-11 20:54:26 +01:00
0a9c9c687d
Code cleanup
2014-11-11 20:47:51 +01:00
373af903a8
Use -install_name on MacOS X when the installation path is known
...
Kudos to yrmt@ for the hint
2014-11-11 20:47:51 +01:00
bdb9f4b4ce
Fix for $(MKDIR) in "make distcheck" without any other target to install
2014-10-31 18:49:15 +01:00
ab6c01a9bf
Default "make distcheck" to using OBJDIR and testing (un)installation to DESTDIR
2014-10-31 18:10:32 +01:00
e97db07dd7
Also output the OBJDIR variable when relevant
2014-10-31 02:35:26 +01:00